Akses Pembolehubah Luaran dalam Fungsi
Dalam PHP, pembolehubah dalam fungsi mempunyai skopnya sendiri, berasingan daripada skop global. Walau bagaimanapun, adalah mungkin untuk memberikan fungsi akses kepada pembolehubah luaran menggunakan teknik tertentu.
Menggunakan Pembolehubah Global
Pendekatan paling mudah ialah mengisytiharkan pembolehubah luaran sebagai global dalam fungsi menggunakan kata kunci global. Ini memberikan fungsi akses terus kepada pembolehubah itu.
function someFunction() { global $myArr; $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; }
Kelemahan Menggunakan Pembolehubah Global:
Walaupun kata kunci global membenarkan akses mudah, ia memperkenalkan gandingan global, menjadikan fungsi bergantung kepada pembolehubah luaran. Ini boleh membawa kepada kod yang lebih sukar untuk dikekalkan dan diuji.
Pendekatan Alternatif:
Terdapat amalan yang lebih baik untuk membenarkan fungsi mengubah suai pembolehubah luaran tanpa menggunakan pembolehubah global.
Keputusan Pengembalian:
Sesuatu fungsi boleh kembali hasil manipulasinya pada pembolehubah luaran sebagai pembolehubah baharu.
function someFunction() { $myArr = array(); // At first, you have an empty array $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; // Put that $myVal into the array return $myArr; }
Melalui Parameter Mengikut Rujukan:
Teknik lain ialah melepasi pembolehubah luaran sebagai parameter dengan rujukan menggunakan simbol &. Ini membolehkan fungsi mengubah suai pembolehubah asal secara langsung.
function someFunction(array &$myArr) { $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; // Put that $myVal into the array }
Kelebihan Pendekatan Alternatif:
Pendekatan alternatif ini memastikan fungsi tersebut beroperasi secara bebas daripada sebarang konteks luaran , menjadikannya lebih mudah untuk menguji dan menggunakan semula.
Tambahan Sumber:
Untuk maklumat lanjut, rujuk bahagian manual PHP pada:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses dan Mengubah Suai Pembolehubah Luaran Dalam Fungsi PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!