Ver Mensaje Individual
  #10 (permalink)  
Antiguo 08/01/2014, 09:04
DoHITB
 
Fecha de Ingreso: abril-2012
Ubicación: 41°37′00″N, 00°37′00″E
Mensajes: 462
Antigüedad: 12 años, 1 mes
Puntos: 33
Respuesta: Ejecutar sentencia desde variable

Buenas!

Gracias por responder tan de manera tan amplia. Recuerdo hacer algo así como lo que dices tú, pero desconocía que la variable de una clase se pudiera referenciar desde otra variable. En ese caso, yo hacía:

Código PHP:
Ver original
  1. $this->vars = array('var1' => &$this->var1 /*etc*/);

Y entonces usaba $this->vars[$variable] = $valor;

Realmente se programar. Quizás no conozco el 100% de las posibilidades de PHP (como acabo de comentar, por ejemplo, no conocía el "truco" que has mostrado). Tampoco había pensado demasiado la idea de cómo solucionar mi problema (hubiera acabado usando algo similar a lo que dices tú).

Para ser concretos, hay algo como:

Fichero1:
Código:
ClassA;
var1=1;
var2=2;
var3=3;
var4=4;
ClassB;
var1=a
.
.
.
Y lo que quiero es instanciar el objeto a través del contenido del fichero. Se que hay JSON y derivados, pero por la naturaleza del programa que me genera el fichero y por mis (casi) nulos conocimientos de JSON y derivados me es muy difícil hacer servir esta estructura (amén que tampoco se hasta que punto es eficiente usar la notación JSON, ya que si es un framework de ámbito general supongo hará una serie de comprobaciones que puede que a mi no me interesen hacer, haciendo por tanto que mi script php sea más lento...)

Por otra parte, se que mis mensajes en los foros suelen ser crípticos, pues suelo postear conceptos que no son mas que eso: conceptos. Es decir, cuando decía que buscaba saber si se podía hacer lo del eval(), buscaba (literalmente) esa misma respuesta. Se que puede no ser correcto, o no ser eficiente... pero (en este caso) se trata de un ejercicio auto-impuesto para experimetnar con la sentencia "eval()". Ahora que ha surgido tu idea, me plantearé estudiarla, y de nuevo experimentar con el concepto "llamar a la variable de un objeto mediante otra variable", que desde luego me ayudará en un par de desarrollos que tengo a medias...

Un saludo.