Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/10/2013, 20:16
elpropiopato23
 
Fecha de Ingreso: octubre-2011
Ubicación: Niquitao
Mensajes: 28
Antigüedad: 12 años, 7 meses
Puntos: 0
Acceder a una clase con una variable string

Hola Amigos quisiera saber si es posible hacer esto en php; Estoy trabajando actualmente en laravel 4

tengo un clase llamada 'Country'
Código PHP:
Ver original
  1. <?php
  2. class Country extends Eloquent
  3. {
  4.     protected $table = 'country';
  5.     protected $primaryKey = 'idcountry';
  6.     public $timestamps = false;
  7.  
  8.     public static function  getCountries()
  9.     {
  10.         //code
  11.         return ...;
  12.     }
  13. }

se que se debe acceder de esta forma:

Código PHP:
Ver original
  1. public function getIndex()
  2. {
  3.     //Obtengo los resultado deseados
  4.     $countries = Country::getCountries();
  5. }

Pero yo quisiera acceder de esta otra forma porque necesito cualquier clase de las 20 que poseo, por eso quiero hacer algo generico que sirva según la petición que desee el usuario, y según esa petición viene un parámetro por ajax que me definira cúal clase usar.
Por lo tanto si por ajax me viene un parámetro llamado clasesolicitada con este valor 'Country' como se captura a continuación, yo pueda acceder sin ningún problema a esa clase

Código PHP:
Ver original
  1. public function getIndex()
  2. {
  3.   //Input::get('clasesolicitada')  es el parámetro que viene por la URL equivalente a 'Country'
  4.   $clase =Input::get('clasesolicitada');
  5.  
  6.    //esta es la forma como quisiera acceder a la clase
  7.    $countries = $clase::getCountries();
  8. }

Se que por Javascript se puede ejecutar vario código como funciones u otras cosas con eval(), pero en php no vi o no entendí como hacerlo con eval().

No se si sea posible hacer lo que deseo pero cualquier ayuda sera bienvenida;
Mil Gracias