Mengakses Pembolehubah Global dalam Fungsi
Dalam PHP, mengakses pembolehubah global dalam fungsi memberikan cabaran tertentu. Pertimbangkan kod berikut:
<br>$sxml = new SimpleXMLElement('<somexml/>');</p> <p>fungsi foo(){</p> <div class="code" style="position:relative; padding:0px; margin:0px;"><pre class="brush:php;toolbar:false">$child = $sxml->addChild('child');
}
foo();
Kod ini cuba mengakses pembolehubah global $sxml dari dalam fungsi foo(), tetapi ia gagal. Fungsi dalam PHP mempunyai skop setempatnya sendiri dan tidak boleh mengakses pembolehubah daripada skop global secara lalai.
Untuk mengakses pembolehubah global dalam fungsi, terdapat beberapa pilihan:
Luluskan Pembolehubah Global sebagai Argumen:
Anda boleh menghantar pembolehubah global sebagai argumen kepada fungsi, membenarkannya mengakses ia.
function foo($sxml){ $child = $sxml->addChild('child'); } foo($sxml);
Isytiharkan Pembolehubah Global sebagai Pembolehubah Global:
Anda boleh mengisytiharkan pembolehubah global sebagai pembolehubah global dalam fungsi menggunakan kata kunci global.
function foo(){ global $sxml; $child = $sxml->addChild('child'); } foo();
Gunakan Penutupan:
Penutupan dalam PHP membolehkan anda mengakses pembolehubah luar dalam fungsi.
function foo() use (&$sxml) { $child = $sxml->addChild('child'); } foo();
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Pembolehubah Global dalam Fungsi PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!