1
我從來沒有真正使用過PHP命名空間,而且我正在閱讀如何在PHP網站上使用它,包括如何在命名空間代碼和非空閒(全局代碼)中包含文件。試圖瞭解命名空間編碼
來源:http://www.php.net/manual/en/language.namespaces.definitionmultiple.php
我又試圖下面來進行測試:
namespace {
$bar = 123;
}
namespace moo {
$bar = 400;
}
namespace {
echo $bar . "<br>\n";
//echo moo\$bar . "<br>\n";
}
但是我回來是意外..
上面的輸出是:
400
不應該是123
因爲我我沒有引用moo
命名空間?此外,如果我取消註釋下一行,則會出現PHP語法錯誤。
我在做什麼錯?
命名空間之後的'{}'形式對我來說是新的,我認爲它只是一個PHP文件開頭的命令,我認爲文檔中有一些說變量總是全局的東西:http: //www.php.net/manual/en/language.namespaces.definition.php –
@JasonSperske那麼它說你必須使用括號,如果你想在同一個文件中使用全局和命名空間代碼。儘管我對這個變量很不好,但這是一個痛苦。 :( – Brett
「強烈建議不要將多個名稱空間合併到同一個文件中」 - 從您引用的php.net頁面開始,您在此嘗試完成什麼?這不是傳統命名空間的使用方式。 –