有人能解釋使用DEFINE VS變量在PHP
define('SOMETHING', true);
和
$SOMETHING = true;
之間的差異也許一方或另一方的利益?
我使用變量無處不在,甚至在包含到每個頁面的配置類型文件中我仍然使用變量,因爲我不明白爲什麼要使用define方法。
有人能解釋使用DEFINE VS變量在PHP
define('SOMETHING', true);
和
$SOMETHING = true;
之間的差異也許一方或另一方的利益?
我使用變量無處不在,甚至在包含到每個頁面的配置類型文件中我仍然使用變量,因爲我不明白爲什麼要使用define方法。
DEFINE是一個常量,常量是全局的,可以在任何地方使用。它們也不能被重新定義,哪些變量可以。
我通常使用DEFINE作爲Configs,因爲沒有人可以在事後處理它,並且我可以在沒有global-ling的任何地方檢查它,以便於檢查。
一旦定義,'常量'不能在運行時更改,而普通的變量賦值可以。
常量對於像配置指令這樣的事情來說更好,在執行過程中不應更改它們。此外,如果值是恆定的,則代碼更容易閱讀(並保持移交),如明確地。
define()與支持讀取和寫入操作的標準變量相比,它爲只讀變量。
只是一個說明 - 我看不到術語「只讀變量」 define() - 如手冊所述,它定義了一個*名爲constant *,這是一個非常不同的東西。 – 2009-08-03 23:49:03
範圍也有所不同。
在由原始海報給出的示例中,$SOMETHING
將不能在函數內訪問,而define('SOMETHING', true)
將會是。
常量是非常有用的,當你從一個函數內部要訪問數據,檢查該
<?php function data(){
define("app","hey you can see me from outside the function",false);
$tech = "xampp"; } data(); echo $tech; echo app; ?>
如果你使用一個變量,你永遠不會得到這裏的內在價值是什麼,我得到
注意:未定義的變量:高科技在d:\ XAMPP \ htdocs中\在線數據\的index.php 8 嘿,你可以看到我從功能
外面我能通過用戶的ID從數據庫到會議?例如定義($ _ SESSION ['user_id'],行['id'])行['id']來自數據庫 – 2017-01-03 08:13:59