Kebolehcapaian Nilai Tatasusunan PHP dengan cepat
Pertanyaan:
Bagaimana saya boleh mengakses nilai tatasusunan menggunakan pembolehubah dalam satu baris kod PHP tanpa menggunakan pembolehubah perantaraan, seperti yang ditunjukkan dalam yang berikut contoh:
// Incorrect approach: echo array('a', 'b', 'c')[$key]; // Correct but verbose approach: $variable = array('a', 'b', 'c'); echo $variable[$key];
Respons:
Menurut tatabahasa bahasa PHP, notasi subskrip terpakai secara eksklusif untuk ungkapan berubah-ubah, bukan ungkapan secara umum. Ini tidak seperti kebanyakan bahasa pengaturcaraan lain. Had ini boleh dianggap sebagai kecacatan, kerana ia menghalang subskrip daripada digunakan dengan mana-mana ungkapan tanpa kesamaran.
Pertimbangkan contoh tambahan berikut bagi penggunaan subskrip tidak sah pada ungkapan yang sah:
$x = array(1, 2, 3); print ($x)[1]; // Illegal on a parenthesis expression (not a variable expression) function ret($foo) { return $foo; } echo ret($x)[1]; // Illegal on a function call expression (not a variable expression)
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Nilai Tatasusunan dengan Pembolehubah dalam Baris PHP Tunggal?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!