Solo me pregunta si hay una forma de evitar esto (o si es posible).Variables de variable de PHP con la tecla de matriz
Así que tengo una sección de código similar a esta. Tengo una cadena, con un valor que contiene corchetes, similar a los utilizados al acceder a una clave de matriz. Quiero crear esa clave de matriz utilizando el valor de cadenas. Espero que este código tenga un poco más de sentido de lo que quiero decir.
// String that has a value similar to an array key
$string = 'welcome["hello"]';
$$string = 'thisworks';
// I could then print the array keys value like this
print($welcome["hello"]);
// This would hopefully output 'thisworks'.
Parece que no funciona correctamente. ¿Es posible (o de qué otra manera puedo hacerlo)?
usa una matriz desde el principio, entonces no tienes estos problemas. – hakre
¿Está intentando analizar JSON, quizás? Describa de dónde provienen estos datos un poco más, si pudiera. –
No se usa JSON.Esta es una versión muy simplificada de lo que realmente está sucediendo, pero en esencia las matrices multidimensionales se usan para construir una nueva serie de opciones. Actualmente estoy usando regexp para detectar si la cadena contiene corchetes, y si lo hace, una instrucción if hace un montón de cosas para crear una matriz. Como puede adivinar, intentar hacer que el método anterior funcione ahorrará todo si se comprueba, y funcionaría para ambas opciones que no contienen corchetes y para los que sí lo hacen. –