Seperti yang ditunjukkan dalam rajah: Saya tidak mengisytiharkan dua pembolehubah $t1 dan $t2 Mengapa ia boleh digunakan? Tiada ralat dilaporkan dan manual tidak menyatakan sebab
Manual mengatakan dengan sangat jelas, tetapkan nilai dalam tatasusunan kepada satu set pembolehubah.
Soalan anda:
Seperti yang ditunjukkan dalam gambar: Saya tidak mengisytiharkan dua pembolehubah $t1 dan $t2 Mengapa ia boleh digunakan? Tiada ralat dilaporkan, dan manual tidak menyatakan mengapa
Jadi saya faham bahawa soalan anda bermaksud dua perkara:
Tiada pembolehubah diisytiharkan
Tiada ralat akan dilaporkan apabila menggunakan pembolehubah tidak diisytiharkan
Sebagai tindak balas kepada perkara pertama, PHP ialah bahasa yang ditaip lemah, dan pembolehubah tidak perlu diisytiharkan sebelum digunakan Anda juga boleh memahami bahawa pembolehubah diisytiharkan (dimulakan) pada masa yang sama apabila memberikan nilai kepada pembolehubah. Nah, manual penggunaan senarai telah menjelaskannya dengan sangat jelas, Tetapkan nilai dalam tatasusunan kepada satu set pembolehubah, iaitu, selepas anda menjalankan list($t1, $t2) = explode( ' ', microtime( )), tugasan kepada $t1 dan $t2 telah berjaya. list($t1, $t2) = explode(' ', microtime())的时候,已经给 $t1 和 $t2 赋值成功。
Bagi titik kedua, untuk pembolehubah yang tidak diisytiharkan (iaitu, pembolehubah yang tidak dimulakan), sudah tentu ralat akan dilaporkan jika digunakan.
Anda boleh mencuba echo $udefined; secara langsung Jika $udefined muncul di sini buat kali pertama, jika tiada perkara yang tidak dijangka berlaku, anda pasti akan melaporkan Notiskod> ralat tahap (sila tetapkan tahap ralat dengan betul dan paparkan ralat terlebih dahulu).
Jadi soalan kedua anda bukanlah bahawa anda menggunakan pembolehubah tidak diisytiharkan tanpa melaporkan ralat, tetapi anda menggunakan pembolehubah yang list() telah memberikan nilai untuk anda.
Semoga dapat mengamalkannya! terima kasih.
🎜======== Kemas kini ======🎜
🎜Gambar di atas juga menandakan perbezaan dalam penggunaan list() dalam versi PHP, sila ambil perhatian apabila menggunakannya! 🎜
Gambar pertama:
Manual mengatakan dengan sangat jelas, tetapkan nilai dalam tatasusunan kepada satu set pembolehubah.
Soalan anda:
Jadi saya faham bahawa soalan anda bermaksud dua perkara:
Tiada pembolehubah diisytiharkan
Tiada ralat akan dilaporkan apabila menggunakan pembolehubah tidak diisytiharkan
Sebagai tindak balas kepada perkara pertama, PHP ialah bahasa yang ditaip lemah, dan pembolehubah tidak perlu diisytiharkan sebelum digunakan Anda juga boleh memahami bahawa pembolehubah diisytiharkan (dimulakan) pada masa yang sama apabila memberikan nilai kepada pembolehubah.
Nah, manual penggunaan senarai telah menjelaskannya dengan sangat jelas, Tetapkan nilai dalam tatasusunan kepada satu set pembolehubah, iaitu, selepas anda menjalankan
list($t1, $t2) = explode( ' ', microtime( ))
, tugasan kepada$t1
dan$t2
telah berjaya.list($t1, $t2) = explode(' ', microtime())
的时候,已经给$t1
和$t2
赋值成功。针对第二点,对于没有声明的变量(也就是没有初始化的变量),使用的话当然报错。
你可以试试直接
echo $undefined;
,$undefined
第一次出现在这里,不出意外情况,肯定报个Notice
级别的错误(请首先正确设置错误级别以及显示错误)。所以你第二条疑问不是使用了未声明的变量不报错,而是你使用了
Bagi titik kedua, untuk pembolehubah yang tidak diisytiharkan (iaitu, pembolehubah yang tidak dimulakan), sudah tentu ralat akan dilaporkan jika digunakan.list()
Anda boleh mencuba
echo $udefined;
secara langsung Jika$udefined
muncul di sini buat kali pertama, jika tiada perkara yang tidak dijangka berlaku, anda pasti akan melaporkanNotiskod> ralat tahap (sila tetapkan tahap ralat dengan betul dan paparkan ralat terlebih dahulu).
Jadi soalan kedua anda bukanlah bahawa anda menggunakan pembolehubah tidak diisytiharkan tanpa melaporkan ralat, tetapi anda menggunakan pembolehubah yang
list()
telah memberikan nilai untuk anda.Semoga dapat mengamalkannya! terima kasih.
🎜======== Kemas kini ======🎜 🎜Gambar di atas juga menandakan perbezaan dalam penggunaan list() dalam versi PHP, sila ambil perhatian apabila menggunakannya! 🎜Fungsi fungsi
list adalah untuk menetapkan nilai dalam tatasusunan kepada beberapa pembolehubah, seperti:
Maka nilai $a ialah 1, nilai $b dan $c ialah 2 dan 3
Di atas bermaksud untuk menetapkan nilai utama tatasusunan di sebelah kanan kepada $t1 $t2 secara bergilir