Laravel 实现 Facades 效能
使用过Laravel的同学都知道Facades 的强大,下面就让我们一起创建一个Facades 实例。如有不正确的地方,还请不吝赐教。
1. 实现Laravel的自动加载功能
首先建立目录app/lib/Myapp,然后添加目录到composer.json中
1 "autoload": { 2 "psr-0":{3 "Myapp":"app/lib"4 }5 }
2. 实现功能类
实现能能类 app/lib/Myapp/Test.php
1 php 2 /** 3 * @author brudeke 4 */ 5 namespace Myapp; 6 class Test{ 7 public function do(){ 8 echo 'this is a class'; 9 }10 }
3. 实现ServiceProvider
实现app/lib/Myapp/TestServiceProvider.php ,该类主要是将功能类添加到Ioc容器:
php/** * @author brudeke */namespace Myapp;use Illuminate\Support\ServiceProvider;class TestServiceProvider extends ServiceProvider{ public function register() { $this->app['test'] = $this->app->share( function ($app) { return new \Myapp\Test(); }); }}
4. 实现Facade 实例
实现app/lib/Myapp/Facades/TestFacades.php, 该类的主要美化,实现成员函数类似静态方法的调用形式
1 php 2 /** 3 * @author brudeke 4 */ 5 namespace Myapp\Facades; 6 7 use Illuminate\Support\Facades\Facade; 8 9 class TestFacades extends Facade{10 protected static function getFacadeAccessor()11 {12 return 'test';13 }14 }
5. 加载ServiceProvider
在app/config/app.php 中的providers中添加如下配置:
1 'providers' => array( 2 'Myapp\TestServiceProvider'3 ),
在app/config/app.php 中的aliases中添加别名:
1 'aliases' => array(2 'TestClass' => 'Myapp\Facades\TestFacades',3 ),
接下来就可以在项目中以TestClass::do()的形式使用该功能类了。
- 1楼brudeke
- 11111
相关文章
相关视频
专题推荐
-
独孤九贱-php全栈开发教程
全栈 170W+
主讲:Peter-Zhu 轻松幽默、简短易学,非常适合PHP学习入门
-
玉女心经-web前端开发教程
入门 80W+
主讲:灭绝师太 由浅入深、明快简洁,非常适合前端学习入门
-
天龙八部-实战开发教程
实战 120W+
主讲:西门大官人 思路清晰、严谨规范,适合有一定web编程基础学习
- 最新文章
- 热门排行
上一篇: php学习之路5(表单验证)
下一篇: ajax简单实现ajax
推荐阅读
-
Laravel 实现 Facades 效能
-
laravel 5 实现模板主题功能(续)_PHP
-
PHP框架Laravel插件Pagination实现自定义分页
-
laravel 里面若数据表里面存在该user_id则更新该id下的其它字段,如果不存在则新建一条记录,数据库操作如何实现?
-
在Laravel框架里实现发送邮件实例(邮箱验证)
-
laravel 5 实现模板主题功能,laravel模板_PHP教程
-
laravel 5 实现模板主题功能(续),laravel模板_PHP教程
-
本站的浏览次数重复刷新时,不会增加,用laravel怎么实现呢?
-
Laravel 如何实现 管理员后台权限控制
-
Laravel 5.2 新特性系列 -- 隐式路由模型绑定功能实现
网友评论
文明上网理性发言,请遵守 新闻评论服务协议
我要评论