zauważyłem, że przekazywanie referencji nie zawsze działa. Mam pytanie dlaczego tak się dzieje? Czy to kwestia konwencji, o której trzeba pamiętać?
Działający kod:
<?php function format(&$s) { } else { $s[$i] = "\n\n<p>" . $s[$i] . "</p>"; } } } format($f); ?>
Przy innym wywołaniu funkcji przekazanie referencji nie działa, wyświetla się pusta strona:
function format(&$s) { } else { $s[$i] = "\n\n<p>" . $s[$i] . "</p>"; } } } $zmiana = format($f);
Kiedy w funkcji dopiszę return to widać, że funkcja działa, jedynie referencja nie. Strona znów się wyświetla.
<?php function format($s) { } else { $s[$i] = "\n\n<p>" . $s[$i] . "</p>"; } } } $zmiana = format($f); ?>
W czym lepsze jest:
format($f);
od:
$zmiana = format($f);
?