ROHAN2 WORLD 1-120 TR TİPİ OFFICIAL YOHARA, BALATHOR VE AMON! 80. GÜNÜNDE! +10.000 ONLİNE! HİLE VE BOT %100 ENGELLİ HEMEN TIKLA!
PHP, bir fonksiyona argüman geçirmek için varsayılan olarak "değere göre çağırma" mekanizmasını kullanır. Fonksiyon içindeki argümanlar değiştirilirse, değişiklikler fonksiyonun dışına yansımaz. Bir fonksiyonun argümanlarını değiştirmesine izin vermek için "referansa göre çağırma" mekanizması kullanılmalıdır.
PHP'de bir referans değişkeni, her ikisinin de tek bir değeri okuyup yazabilmesi için orijinal veya ana değişkene bir "takma ad" görevi görür. Başka bir deyişle, iki farklı isme sahip değişkenler aynı değere erişebilir ve aynı değişkenmiş gibi davranırlar.
Aşağıdaki PHP betiği referansların ne olduğunu anlamanıza yardımcı olacaktır. Burada, $var normal bir dize değişkenidir. $var1'i $var'a bir referans olarak bildiririz , ikincisine "&" sembolü ekleriz.
$var1 'in $var ' ın bir takma adı veya referansı olduğunu söylediğimizde , bunun değerindeki herhangi bir değişikliğin $var ' ın değerini de değiştireceği ve bunun tersi anlamına gelir.
Örnek
Aşağıdaki örnek, PHP'de "referansla çağırma"nın nasıl çalıştığını göstermektedir.
Fonksiyon çağrıldığında $arg1 $x'e referans olur ve $arg2 $y'ye referans olur.
Fonksiyon gövdesinin içerisinde $arg1 veya $arg2 (veya her ikisi) değerinin değişmesi, $x ve $y değerlerinin de değişmesine neden olur.
Örnek
Aşağıdaki örneğe bir bakalım:
PHP:
<?php
function change_name(&$nm) {
echo "Initially the name is $nm" . PHP_EOL;
$nm = $nm."_new";
echo "This function changes the name to $nm" . PHP_EOL;
}
$name = "John";
echo "My name is $name" . PHP_EOL;
change_name($name);
echo "My name now is $name" . PHP_EOL;
?>
$name değişkeni change_name() fonksiyonuna geçirilir. Bir referans değişkeni &$nm onun referans değişkeni olur. $ nm'deki herhangi bir değişiklik , fonksiyon dışındaki $name'e yansıtılır.
Aşağıdaki çıktıyı üretecektir:
My name is John
Initially the name is John
This function changes the name to John_new
My name now is John_new
PHP'deki bir fonksiyon referansla argümanları kabul edebildiği gibi, bir referans da döndürebilir. Referans döndüren bir fonksiyon tanımlamak için, fonksiyon adının önüne "&" sembolü ekleyin.
Örnek
Aşağıdaki kod, bir referans döndüren bir fonksiyonun örneğini gösterir. myfunction() içindeki yerel bir statik değişken olan $x'i döndürür. "&" sembolü önüne eklendiğinden, $a (döndürme değerini depolayan değişken) &x'e bir referans olur. Sonuç olarak, $a'daki herhangi bir değişiklik $x değerini de değiştirir.