Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => PHP => Mensaje iniciado por: jhonatanAsm en 10 Febrero 2012, 02:09 AM

Título: convertir objeto en array, para que sería útil?
Publicado por: jhonatanAsm en 10 Febrero 2012, 02:09 AM
hola, no entiendo por qué en el sgte code, crea un objeto, y ni bien crea el objeto, lo convierte en array. ¿ por qué no crear directamente el array? muchas gracias de antemano.

la funcion:

function invocar_modelo($modelo)
{
       if($modelo)
       {
             require_once('models.php');
             $data = new $modelo();// CREA EL OBJETO, E INMEDIATAMENTE LO CONVIERTE
             settype($data, 'array');//  EN ARRAY ? por qué hacerlo de esa manera?.salu2
             return $data;
       }
}
Título: Re: convertir objeto en array, para que sería útil?
Publicado por: jhonatanAsm en 10 Febrero 2012, 14:35 PM
será que me pueden ayudar?salu2
Título: Re: convertir objeto en array, para que sería útil?
Publicado por: Shell Root en 10 Febrero 2012, 20:12 PM
A ver, supongo que estan en lo que es Modelo-Vista-Controlador, entonces para pasar los datos a la vista usan el array.

No se que hay en el archivo models.php?
Título: Re: convertir objeto en array, para que sería útil?
Publicado por: jhonatanAsm en 10 Febrero 2012, 23:35 PM
sorry,no me explique bien.

lo que pregunto es: ¿ con qué intención uno crea un objeto para luego convertirlo en un array? así como en el code:


$data = new Modelo();// CREA EL OBJETO, E INMEDIATAMENTE LO
             settype($data, 'array');//  CONVIERTE EN ARRAY


por ejemplo, si uno mira una línea de código así:

$asdf++;

sabe que eso es un contador, que llevará las cuentas de cierto proceso o algo así.

haber si me puedes dar otra manito, jeje.  te agradezco mucho la ayuda brindada. gracias!
Título: Re: convertir objeto en array, para que sería útil?
Publicado por: Shell Root en 11 Febrero 2012, 00:33 AM
Bueno, ahora dime que código tiene models.php.
Título: Re: convertir objeto en array, para que sería útil?
Publicado por: jhonatanAsm en 11 Febrero 2012, 01:42 AM
el archivo models.php contiene:


<?php
class ModeloUno
{
var $propiedad=22;
...
}

class 
ModeloDos
{
var $propiedad_1=44;
var $propiedad_2=55;
...
}
?>



Título: Re: convertir objeto en array, para que sería útil?
Publicado por: Shell Root en 11 Febrero 2012, 06:26 AM
Bueno no soy un experto en esto de PHP, pero tengo mis bases, lo entiendo como...

Primero se tiene una función invocar_modelo que tiene como parámetro la variable $modelo, en esta variable va a ir el nombre de la clase que se quiere instanciar (En este caso, sería... ModeloUno o ModeloDos).

Código (php) [Seleccionar]
$data = new $modelo();
La variable $data se crea y se convirtiete en un objeto del tipo $modelo (Variable parámetro con el nombre de la clase).

Código (php) [Seleccionar]
settype($data, 'array');
Convierte el resultado obtenido de la instancia de la clase en un array, dado que la clase ModeloDos tiene 2 variables,
Código (php,2,3) [Seleccionar]
class ModeloDos{
 var $propiedad_1=44;
 var $propiedad_2=55;
}


Al convertirlas en array quedaría,
Código (bash) [Seleccionar]
Array ( [propiedad_1] => 44 [propiedad_2] => 55 )


----
Soy muy malo explicando, pero con esto creo que puedes entender lo que se realiza.
Título: Re: convertir objeto en array, para que sería útil?
Publicado por: jhonatanAsm en 11 Febrero 2012, 06:33 AM
gracias, y está bien explicado!  ;-) ;-) ;-)