Dieter: Referenz in PHP--Funktion

Beitrag lesen

Hallo,
also ich habe eine Funktion, die gibt nicht nur einen Wert zurück, sondern soll auch noch eine übergebene Variable ändern.

Beispiel:
<?php
function add(&$var) { $var +=5; }
$var = 10;
add(&$var);
echo $var; //Ausgabe: 15
?>
(Ein Return ist in meinem Beispiel nicht möglich, global ist auch nicht das wahre)

Naja bei mir klappt dieser Script, ein Freund meinte aber, folgende Fehlermeldung zu erhalten:

Warning: Call-time pass-by-reference has been deprecated - argument passed by value; If you would like to pass it by reference, modify the declaration of runtime function name. If you would like to enable call-time pass-by-reference, you can set allow_call_time_pass_reference to true in your INI file. However, future versions may not support this any longer. in script.php on line 2

So jetzt die Frage, wie muss der Script richtig aussehen*, es gibt ja ein paar Möglichkeiten:

#1:
function add(&$var) { $var +=5; }
add(&$var);

#2:
function add(&$var) { $var +=5; }
add($var);

#3:
function add($var) { $var +=5; }
add(&$var);

* Der Script muss möglichst weit Abwärtskompatibel sein, sprich am besten von PHP4.0.6 bis PHP5.1

Grüße
Dieter