Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pengenalan kepada parameter lulus melalui rujukan dalam PHP: Cara menggunakan simbol &

Pengenalan kepada parameter lulus melalui rujukan dalam PHP: Cara menggunakan simbol &

WBOY
WBOYasal
2023-06-27 13:13:111491semak imbas

PHP ialah bahasa pengaturcaraan popular yang menyokong dua cara menghantar parameter: lulus mengikut nilai dan lulus melalui rujukan. Melepasi nilai menyalin nilai satu pembolehubah kepada pembolehubah yang lain, manakala melalui rujukan menyalin alamat memori satu pembolehubah kepada pembolehubah lain. Artikel ini akan memperkenalkan penggunaan parameter lulus rujukan PHP, terutamanya penggunaan simbol &.

Asas menghantar parameter melalui rujukan

Dalam PHP, kita boleh menukar atau mengembalikan nilai pembolehubah dengan menghantarnya ke fungsi. Proses ini boleh dilakukan dengan lulus dengan nilai atau lulus dengan rujukan. Dalam nilai pass-by, fungsi menyalin nilai pembolehubah, manakala dalam pass-by-reference, fungsi menggunakan pembolehubah asal.

Sintaks asas untuk menghantar parameter melalui rujukan adalah seperti berikut:

fungsi &contoh(&$parameter){

// code to modify $parameter
return $parameter;

}

Dalam fungsi ini, & bermaksud lulus melalui rujukan, dan $parameter ialah parameter fungsi. Fungsi ini akan mengembalikan rujukan kepada pembolehubah $parameter. Seperti yang anda lihat, dalam definisi fungsi, terdapat simbol & sebelum nama parameter, yang bermaksud bahawa parameter ini ialah parameter rujukan.

Contoh penggunaan simbol &

Mari lihat beberapa contoh untuk menggambarkan cara menggunakan simbol &.

// 值传递的例子
function foo($var){
    $var = 2;
} 

$a = 1;
foo($a);
echo $a; // 输出:1

// 引用传递的例子
function bar(&$var){
    $var = 2;
} 

$a = 1;
bar($a);
echo $a; // 输出:2

Dalam contoh ini, fungsi foo() ialah fungsi pass-by-value, manakala fungsi bar() ialah fungsi pass-by-reference. Apabila foo($a) dilaksanakan, nilai $a disalin ke $var, jadi nilai $var ialah 1. Di dalam fungsi, nilai $var ditetapkan kepada 2, tetapi oleh kerana $var ialah pembolehubah setempat, perubahannya tidak akan menjejaskan nilai asal $a.

Apabila bar($a) dilaksanakan, alamat memori $a disalin ke $var. Oleh itu, di dalam fungsi, pembolehubah $var merujuk kepada alamat memori $a, bukannya menyalin nilai $a. Apabila nilai $var ditetapkan kepada 2 di dalam fungsi, nilai pembolehubah $a juga ditukar kepada 2.

Seperti yang anda lihat, dengan menggunakan simbol &, kita boleh menghantar pembolehubah sebagai penunjuk kepada fungsi. Ini membolehkan fungsi menukar nilai pembolehubah asal, dengan itu menghantar keadaan boleh ubah di sekeliling program.

Perlu diingat bahawa simbol & hanya boleh digunakan pada pembolehubah, bukan ungkapan. Sebagai contoh, kod berikut akan mempunyai ralat sintaks:

$var = 1;
// 以下代码将会出现语法错误
function foo(1 &$var){ 
    $var = 2;
}

Ringkasan

Artikel ini telah memperkenalkan asas menghantar parameter melalui rujukan dalam PHP, terutamanya penggunaan simbol &. Melepasi parameter melalui rujukan membolehkan anda menukar nilai pembolehubah di dalam fungsi, yang berguna apabila anda perlu melepasi keadaan boleh ubah dalam atur cara. Perlu diingatkan bahawa simbol & hanya boleh digunakan pada pembolehubah, bukan ungkapan. Semoga artikel ini dapat memberi manfaat kepada pembaca.

Atas ialah kandungan terperinci Pengenalan kepada parameter lulus melalui rujukan dalam PHP: Cara menggunakan simbol &. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn