課程
/后端開發
/PHP
/洪大師帶你解讀Symfony 2框架
只有getMetadataBag()和getBag(),沒有getFlashBag()?
symfony 2.6
2014-12-19
源自:洪大師帶你解讀Symfony 2框架 5-4
正在回答
2.6的getFlashBag應該是有的,可能代碼提示會出不來,但實際如果寫的話是沒有問題的。
Session.php的源文件在此,可以看到最下面是有這個方法的。
https://github.com/symfony/symfony/blob/v2.6.1/src/Symfony/Component/HttpFoundation/Session/Session.php
出不來提示的原因應該是因為在Request.php里,getSession的注釋中寫的是"@return SessionInterface",而這個interface里面沒有定義getFlashBag這個方法,但實際的Session.php里雖然繼承了SessionInterface,但額外多寫了一個getFlashBag。也就是說getFlashBag在類里面定義了,但在類所繼承的接口中卻沒有定義。
這樣使用起來其實是沒有問題的,getFlashBag可以照常調用,但對于代碼提示工具可能就會造成無法提示這些在interface中定義的方法,就比如這個getFlashBag
11111 提問者
舉報
洪大師教你玩轉強大的框架-Symfony2,提高代碼性能
1 回答無法加載字體
4 回答symfony2.6 - 無法生成get-set-repository
3 回答vagrant up已啟動正常,但是無法訪問
1 回答關于最后說到get('a')無法處理名稱沖突的get和post請求的問題
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2014-12-19
2.6的getFlashBag應該是有的,可能代碼提示會出不來,但實際如果寫的話是沒有問題的。
Session.php的源文件在此,可以看到最下面是有這個方法的。
https://github.com/symfony/symfony/blob/v2.6.1/src/Symfony/Component/HttpFoundation/Session/Session.php
出不來提示的原因應該是因為在Request.php里,getSession的注釋中寫的是"@return SessionInterface",而這個interface里面沒有定義getFlashBag這個方法,但實際的Session.php里雖然繼承了SessionInterface,但額外多寫了一個getFlashBag。也就是說getFlashBag在類里面定義了,但在類所繼承的接口中卻沒有定義。
這樣使用起來其實是沒有問題的,getFlashBag可以照常調用,但對于代碼提示工具可能就會造成無法提示這些在interface中定義的方法,就比如這個getFlashBag