簡體   English   中英

如果全局變量不是預定義的會拋出錯誤嗎?

[英]Throw error if global variable is not pre-defined?

這可能是一個長鏡頭。

我用 PHP 寫了一些代碼:

function test_dummy()
{
    global $this_is_a_test;
    $this_is_a_test = "test in progress";
}
error_log($this_is_a_test);

但是,在調用test_dummy()之前,我沒有定義$this_is_a_test全局變量。 然而字符串"test in progress"仍然打印到第 6 行的日志中。

我知道為什么會發生這種情況,但我的問題是:如果沒有預先定義它期望已經存在的全局變量,是否有一個 PHP 設置可以使函數抱怨/崩潰? 我的項目很大,跟蹤每個變量的定義和使用位置變得越來越困難。 產生錯誤會很有幫助。

global關鍵字是一個范圍修飾符。 當你聲明global $this_is_a_test; 如果它不存在,它會創建一個具有全局作用域的變量。 所以它工作得很好。

有關更多詳細信息,請查看文檔

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM