Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/06/2006, 10:37
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Pues en PHP5 los objetos se pasan por referencia para mas facil manejo esto te sirve para no estar llenando tu memoria de objetos y estarlos copiando.

Un ejemplo de esto es por decir:
Código PHP:
// supongamos que $autobus es una clase llena de otra clase llamada gente
$persona1 $autobus->damePasajero); // le decimos a autobus que nos de el pasajero 1
$persona1->nombre "Juan Perez";
$persona1->edad 30;
$persona1->destino = new Destino"Calle, colonia, cp" ); 
Al nosotros pedirle a autobus un pasajero de su storage, nos devuelve una referencia a la persona asi podemos modificar sus valores y automaticamente se guardan en el storage del autobus.

Si lo pasamos como valor (por defecto en PHP4) entonces tendriamos que tener un metodo mas en autobus para que guarde de regreso el pasajero que le pedimos porque es otro objeto diferente.

Otro ejemplo mas practico es este:
Código PHP:
$objeto1 = new Objeto();
$objeto1->valor "hola!";
$objeto2 $objeto1;
$objeto2->valor "adios!";

echo 
$objeto1->valor// imprime adios!
echo $objeto2->valor// imprime adios! 
esto es porque $objeto2 es una referencia a $objeto1, (pero solo en PHP5), en PHP4 el resultado seria:
Código PHP:
echo $objeto1->valor// imprime hola!
echo $objeto2->valor// imprime adios!