PHP var關(guān)鍵字相關(guān)原理及使用實(shí)例解析
見很多朋友說在php中定義變量用不用var都沒關(guān)系,其實(shí)不然。
看看例子,如果我這樣使用var:
var $a=123;echo $a;//那么程序會提示語法錯(cuò)誤,要去掉var這個(gè)變量定義才行。直接$a=123;echo $a;//這樣才不會報(bào)錯(cuò),php是弱類型語言,所以不聲明類型是沒問題的。
那var什么時(shí)候才能用,請看:
class Test{var $a=123;//訪問控制,這里的var不用就不正常,當(dāng)然你可以用public protected等關(guān)鍵詞代替,來聲明成員變量的屬性}$obj=new Test();echo $obj->a;//打印結(jié)果:123
如果把var換成public,一樣可以的。
但是這個(gè)時(shí)候你在類中去掉var,什么訪問修飾符都沒有,那會提示語法錯(cuò)誤的。
其實(shí)我經(jīng)過測試,認(rèn)為var就是public的別名,是用在類中定義公有屬性的,只不過歷史問題,現(xiàn)在不用var了。后來查了查php官網(wǎng),果然如此。
php官方的解釋:類屬性必須定義為公有,受保護(hù),私有之一。如果用 var 定義,則被視為公有。
Note: 為了兼容性考慮,在 PHP 4 中使用 var 關(guān)鍵字對變量進(jìn)行定義的方法在 PHP 5 中仍然有效(只是作為 public 關(guān)鍵字的一個(gè)別名)。在 PHP 5.1.3 之前的版本,該語法會產(chǎn)生一個(gè) E_STRICT 警告
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. ajax post下載flask文件流以及中文文件名問題2. 網(wǎng)頁中img圖片使用css實(shí)現(xiàn)等比例自動(dòng)縮放不變形(代碼已測試)3. Python基于Serializer實(shí)現(xiàn)字段驗(yàn)證及序列化4. JSP之表單提交get和post的區(qū)別詳解及實(shí)例5. css進(jìn)階學(xué)習(xí) 選擇符6. Python安裝并操作redis實(shí)現(xiàn)流程詳解7. PHP字符串前后字符或空格刪除方法介紹8. html清除浮動(dòng)的6種方法示例9. JavaScript實(shí)現(xiàn)組件化和模塊化方法詳解10. 使用AJAX(包含正則表達(dá)式)驗(yàn)證用戶登錄的步驟
