Diskuze: Co znamená, když funkci předávám hodnotu referencí a jak se to v PHP dělá?
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 3 zpráv z 3.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
V PHP sa standardne funkcii odovzdavaju hodnoty premmennych. Ak sa tato hodnota vo funkcii zmeni, nie je tato zmena propagovana mimo funkcie.
function pridaj ($a) {
$a++;
}
$a = 5;
pridaj($a); // vo vnutri sa $a zvysi na 6
echo $a; // vypise 5
Aby sa hodnota premennej vlozenej do funkcie zmenila aj mimo premennej, musis hodnotu predat referenciou
function pridaj (&$a) {
$a++;
}
$a = 5;
pridaj($a);
echo $a; // vypise 6
Rozdiel je v definovani funkcie, kde pred hodnotu premennej predanej referenciou pridas znak &. Hodi sa to najme ked nevracias ziadnu hodnotu returnom ale chces vlozenu premennu priamo zmenit.
Zobrazeno 3 zpráv z 3.