Ver Mensaje Individual
  #6 (permalink)  
Antiguo 19/08/2005, 10:34
lotusxxl
 
Fecha de Ingreso: junio-2002
Mensajes: 243
Antigüedad: 21 años, 10 meses
Puntos: 1
Pues me parece que lo q has escrito está mal..

te da el mismo resultado pero si te fijas no estás referenciando la varaible $a

lo q estas haciendo es llamar a una función q devuelve un valor y luego se lo asignas a $a

pero si en vez de asignarlo a $a se lo asignas a por ejemplo $b y luego imprimes $a entonces te devolverá 5 en vez de 6...

Código PHP:
function &retref($var

    
$var += 1
    return 
$var


$a 5
$b =& retref($a); 
echo 
$a
PHP creo q a veces tiene un compilador demasiado poco sensible...c es más estricto...y no te deja poner & donde te plazca...

en este ejemplo no te da ningún error pero no se yo si es un buen modo de programar...

creo q el modo de hacerlo correctamente por lo menos desde el punto de vista de c sería el siguiente...

Código PHP:
function retref($var

    
$var += 1
    return 
$var


$a 5
$b retref(&$a); 
echo 
$a
en
Código PHP:
return $var
lo q en realdiad devuelves es el valor q hay en la posición de memoria de $a

Espero q te haya aclarado algo..pq no se q decrite ya jeje

Salu2.