elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  [Ayuda] Constructor Global como Helper
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Ayuda] Constructor Global como Helper  (Leído 1,985 veces)
danny920825

Desconectado Desconectado

Mensajes: 175


Ver Perfil WWW
[Ayuda] Constructor Global como Helper
« en: 21 Julio 2017, 20:02 pm »

Hola a todos. Una vez mas aqui pidiendo ayuda. En este caso quiero hacer una clase que vendria siendo algo asi como un Helper y que me permita ejecutar las tareas básicas para de esta forma poder tener menos métodos en mis clases normales y que mi codigo pueda ser reutilizado. Para ello estoy usando un array donde guardo los valores que le voy a pasar al constructor en forma:
Código
  1. $datos = array ("campo"=>"valor")
estoy haciendo esto en el archivo que recibe los datos del formulario, o sea, mi intento de controller:

Código
  1. $datos = array ("campo"=>"valor");
  2. $miclase = new MiClase();
  3. $miclase->init ($datos);
  4.  

en la clase MiClase que es extendida de la clase helper hago lo siguiente:
Código
  1. public function init($datos)
  2.    {
  3.        ModelBase::initFull($datos, "MiClase");
  4.  
  5.    }
  6.  

y tengo tambien en esa clase los metodos set y los get para trabajar con los datos privados que es lo que voy a hacer en el metodo initfull. Y en la clase Helper hago esto:
Código
  1.  
  2. public static function initFull($datos, $clase)
  3. {
  4.  
  5.        $instance = new $clase();
  6.        foreach ($datos as $key => $value)
  7.        {
  8.            $id = ucwords($key); //para obtener la primera letra en Mayusculas
  9.            $setter = "set$id"; //Ahora tengo el set de la variable privada
  10.            $instance->$setter($value);
  11.  
  12.        }
  13. }
  14.  
  15.  
Y no muestra errores, pero el caso es que a la clase "MiClase" no le estan llegando los datos. ¿Que estoy haciendo mal? Por favor, ayuda
y no marca


En línea

"Los que reniegan de Dios es por desesperación de no encontrarlo".
   Miguel de Unamuno
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines