範例解析PHP var關鍵字相關原理及使用

2020-07-16 10:06:01

見很多朋友說在php中定義變數用不用var都沒關係,其實不然。

看看例子,如果我這樣使用var:

var $a=123;
echo $a;
//那麼程式會提示語法錯誤,要去掉var這個變數定義才行。直接
$a=123;
echo $a;
//這樣才不會報錯,php是弱型別語言,所以不宣告型別是沒問題的。

那var什麼時候才能用,請看:

class Test{
var $a=123;//存取控制,這裡的var不用就不正常,當然你可以用public protected等關鍵詞代替,來宣告成員變數的屬性

}
$obj=new Test();
echo $obj->a;
//列印結果:123

如果把var換成public,一樣可以的。

但是這個時候你在類中去掉var,什麼存取修飾符都沒有,那會提示語法錯誤的。

其實我經過測試,認為var就是public的別名,是用在類中定義公有屬性的,只不過歷史問題,現在不用var了。後來查了查php官網,果然如此。

php官方的解釋:
類屬性必須定義為公有,受保護,私有之一。如果用 var 定義,則被視為公有。

Note: 為了相容性考慮,在 PHP 4 中使用 var 關鍵字對變數進行定義的方法在 PHP 5 中仍然有效(只是作為 public 關鍵字的一個別名)。在 PHP 5.1.3 之前的版本,該語法會產生一個 E_STRICT 警告

以上就是範例解析PHP var關鍵字相關原理及使用的詳細內容,更多請關注TW511.COM其它相關文章!