Heim > Artikel > Backend-Entwicklung > Was tun, wenn globales PHP nicht funktioniert?
Lösungen dafür, dass PHP Global nicht funktioniert: 1. Reduzieren Sie mehrstufige Include-Aufrufe und versuchen Sie, Include nicht innerhalb von Funktionen zu verwenden. 2. Deklarieren Sie „$site_name“ als globale Variable auf der entsprechenden Seite.
Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP8, Dell G3-Computer.
php globale Variable ist ungültig?
Für PHP-Anfänger verwenden Sie global
, finden Sie das möglicherweise innerhalb der Funktion global
Eine Variable außerhalb der Funktion, aber in einigen Fällen kann die Variable nicht korrekt ausgegeben werden (z. B. global
variable ist ungültig). Schauen wir uns ein einfaches und allgemeines Beispiel an. global
关键字时,可能会发现,在函数内global
一个函数外的变量,在某些情况下却无法正确输出该变量(即global
变量无效)。下面我们来看一个简单而常见的例子。
在这里,我们有a.php和b.php两个页面。
b.php页面代码如下:
<?php $site_name = 'CodePlayer'; function sayHi(){ global $site_name; echo "Hello! Welcome to $site_name !"; } ?>
a.php页面代码如下:
<?php function include_view_page(){ include 'b.php'; sayHi(); } include_view_page(); ?>
上面的例子非常简单,我们希望当我们访问a.php页面,能够正确显示出欢迎语句。不过,遗憾的是,当我们使用浏览器访问a.php页面却发现输出结果如下:
Hello! Welcome to !
也就是说,我们在函数include_view_page()
中调用sayHi()
函数时,b.php页面sayHi()
函数中global
的$site_name
//b.php <?php global $site_name; $site_name = 'CodePlayer'; function sayHi(){ global $site_name; echo "Hello! Welcome to $site_name !"; } ?>🎜Der a.php-Seitencode lautet wie folgt:
$site_name
wurde nicht richtig erkannt und wurde wirksam. Was ist los? 🎜实际上,当我们在函数include_view_page()
中include
b.php页面时,b.php页面的变量$site_name
就相当于存放在include_view_page()
函数内的作用域中。众所周知,在函数内global
一个变量实际上是在函数内建立一个对页面全局变量的引用。而在我们的例子中,这个$site_name
变量对于a.php而言,它只是include_view_page()
函数内的局部变量,因此无法global
该变量,我们进行相关调用时自然无法获取到正确的变量和变量值。
在php中,我们尤其需要注意类似上述在函数内include
某个页面,导致该页面中变量的作用域发生改变的问题。为了避免这种情况,我们应该尽量减少多层次的include
调用,也尽量不要在函数内使用include
。此外,我们还可以在b.php的页面中将$site_name进行全局变量形式的声明。
//b.php <?php global $site_name; $site_name = 'CodePlayer'; function sayHi(){ global $site_name; echo "Hello! Welcome to $site_name !"; } ?>
【推荐学习:《PHP视频教程》】
Das obige ist der detaillierte Inhalt vonWas tun, wenn globales PHP nicht funktioniert?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!