亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

$obj->$method的問題:

569333b30001cb0f05000119.jpg

http://img1.sycdn.imooc.com//569336260001fb0b08680328.jpg

0.傳入到控制器簡易調用函數中的參數是正確的,但是下面控制器實例化后調用對應的方法就會出現如圖的錯誤,我把$method改成show()就是正確輸出了。

1.我想要知道:出現錯誤的原因是不是因為下面控制器實例化對象調用方法時,變量的解析不對,$method沒有正確被解析為一個不帶$的字符串。

2.還有:如何讓$method這個變量被正確解析成不帶$的字符串

正在回答

2 回答

你最大的錯誤是對屏敲代碼,這個是個毛病,要改。寧愿自己去寫100遍才寫出來也不要對屏敲10遍背下來。不然你以后寫不出代碼的。

0 回復 有任何疑惑可以回復我~

自我回答:錯誤原因是:如果這樣寫?

$obj->$method.'()' ?

那么解析順序是這樣的

  1. 解析$ob->$method -------此時的$method是全字符串的,會報出一個未定義屬性的notice,

  2. 解析器第二步會做一個完全沒有意義的事情,將上一步解析的最后結果連接上這樣一個字符串????'()'????

    然后就沒有然后了。

正確做法:$obj->$method();

-------------------------------------

總結:我只想說,是我2b了,視頻中的紅字部分看差了,自己還搞了兩個小時去查原因。不過起碼知道了一個會出現未定義屬性的notice原因,也算是漲姿勢了

1 回復 有任何疑惑可以回復我~
#1

PengCheng

嗯,應該是這樣寫,$obj->$method(); 不能在這種寫法時 方法還用 字符串拼接方式來做
2016-01-12 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

$obj->$method的問題:

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號