php - Soalan tentang menentukan pembolehubah
过去多啦不再A梦
过去多啦不再A梦 2017-06-07 09:23:08
0
5
705

Saya seorang pemula, saya menggunakan phpstorm untuk menulis kod berikut di rumah dan ia akan berjalan tanpa ralat
Kodnya adalah seperti berikut:


<?php
$x=5; // Pembolehubah global
fungsi myTest()
{

$y=10; // 局部变量
echo "<p>测试函数内变量:<p>";
echo "变量 x 为: $x";
echo "<br>";
echo "变量 y 为: $y";

}
myTest();
echo "<p>Uji fungsi pembolehubah luaran:<p>";
echo "Pembolehubah x ialah: $x";
echo "
";
echo "Pembolehubah y ialah: $ y";
?>


Tetapi semasa saya sedang bekerja, penyemak imbas melaporkan gesaan ini, seperti berikut:
Pembolehubah dalam fungsi ujian:
Notis: Pembolehubah tidak ditentukan: x dalam F:WEBDEVELOPIndex.php pada baris 8
Pembolehubah x ialah:
Pembolehubah y ialah: 10
Uji Pembolehubah di luar fungsi:
Pembolehubah x ialah: 5
Notis: Pembolehubah tidak ditentukan: y dalam F:WEBDEVELOPIndex.php pada baris 18
Pembolehubah y ialah:

Soalan:
Saya sedang membaca tutorial PHP dan ia mengatakan bahawa $ boleh digunakan untuk mentakrifkan pembolehubah, tetapi ia telah digesa bahawa pembolehubah x belum diisytiharkan. Bolehkah seseorang menjelaskannya kepada saya? Terima kasih

过去多啦不再A梦
过去多啦不再A梦

membalas semua(5)
女神的闺蜜爱上我
  1. Saya rasa ralat tidak dilaporkan di rumah tetapi ralat itu dilaporkan oleh syarikat kerana tetapan tahap ralat PHP yang berbeza Anda boleh cuba menambah kod berikut pada permulaan kod:

    error_reporting(E_ALL ^ E_NOTICE);// 除了E_NOTICE之外,报告所有的错误
    Ini ditetapkan secara dinamik, anda juga boleh menetapkannya dalam php.ini, kaedah khusus boleh didapati di Baidu;

  2. Pembolehubah dalam fungsi ditutup kepada dunia luar Jika ia ditetapkan di luar, ia tidak boleh digunakan di dalam versi PHP Ia dijelaskan secara terperinci di tingkat atas.

迷茫

Pembolehubah global PHP diterangkan secara terperinci di sini

Untuk menentukan pembolehubah global secara luaran, apabila menggunakannya di dalam fungsi, anda perlu menggunakan kata kunci global, yang merupakan keperluan tatabahasa, atau gunakan tatasusunan $GLOBAL

女神的闺蜜爱上我

Anda perlu mengisytiharkannya sebagai pembolehubah global, global $x hanya kemudian

;
巴扎黑

Anda boleh mencari kata kunci "skop". Skop pembolehubah setiap bahasa adalah berbeza dan boleh difahami secara perbandingan.

曾经蜡笔没有小新

Lihat versi PHP yang anda uji dan versi PHP dalam persekitaran kerja anda. Saya tidak pasti tentang versi baharu Skop pembolehubah global dalam 5.3 dan 5.6 tidak termasuk bahagian dalam fungsi, jadi adalah perkara biasa bahawa fungsi itu tidak dapat mengenali $x, kerana tiada pembolehubah sedemikian dalam skop. fungsinya

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan