課程
/后端開發
/ThinkPHP
/快速入門ThinkPHP 5.0--基礎篇
為什么我不能直接用Env::get('name')這個方法,報錯是不能被靜態調用。?? 然后我實例化后 就可以用了 ? $env= new Env();$env->get('name'),為什么啊 ? 我配置有問題?
2018-04-19
源自:快速入門ThinkPHP 5.0--基礎篇 2-12
正在回答
要使用Config類,首先需要在你的類文件中引入
use?think\facade\Config;
或者(因為系統做了類庫別名,其實就是調用think\facade\Config)
use?Config;
同樣的要使用Env類,必須先引入think\facade\Env或者\Env。
其實你第一個問題引入類名引入有問題,應該是think\facade\Config,facade類是TP5.1新規定,
門面(Facade)為容器中的類提供了一個靜態調用接口,相比于傳統的靜態方法調用, 帶來了更好的可測試性和擴展性,你可以為任何的非靜態類庫定義一個facade類。
因為ThinkPHP5.1多了一個facadel類
系統已經為大部分核心類庫定義了Facade,所以你可以通過Facade來訪問這些系統類,當然也可以為你的應用類庫添加靜態代理。
只要這個類庫繼承think\Facade,就可以使用靜態方式調用動態類app\common\Test的動態方法,例如上面的代碼就可以改成:
//?無需進行實例化?直接以靜態方法方式調用hello echo?\app\facade\Test::hello('thinkphp');
結果也會輸出?hello,thinkphp。
說的直白一點,Facade功能可以讓類無需實例化而直接進行靜態方式調用。
參考網址http://www.php.cn/manual/view/32830.html,ThinkPHP5.1核心Facade類庫相關
可以啊
舉報
ThinkPHP5已發布多時,想了解ThinkPHP5的新特性嗎?老司機帶你馬上出發~
2 回答.env不管用
1 回答生成靜態html
3 回答.env文件可以生效,但使用dump($_ENV)出不來.env文件中的信息
2 回答.env問題
1 回答.env文件名
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-05-22
要使用Config類,首先需要在你的類文件中引入
或者(因為系統做了類庫別名,其實就是調用think\facade\Config)
同樣的要使用Env類,必須先引入think\facade\Env或者\Env。
其實你第一個問題引入類名引入有問題,應該是think\facade\Config,facade類是TP5.1新規定,
門面(Facade)為容器中的類提供了一個靜態調用接口,相比于傳統的靜態方法調用, 帶來了更好的可測試性和擴展性,你可以為任何的非靜態類庫定義一個facade類。
2018-05-22
因為ThinkPHP5.1多了一個facadel類
門面(Facade)為容器中的類提供了一個靜態調用接口,相比于傳統的靜態方法調用, 帶來了更好的可測試性和擴展性,你可以為任何的非靜態類庫定義一個facade類。
只要這個類庫繼承think\Facade,就可以使用靜態方式調用動態類app\common\Test的動態方法,例如上面的代碼就可以改成:
結果也會輸出?hello,thinkphp。
參考網址http://www.php.cn/manual/view/32830.html,ThinkPHP5.1核心Facade類庫相關
2018-04-20
可以啊