本文介绍了 Laravle 5 的安装及简要的使用方法。
服务容器 服务提供者
自定义的类,不是基于接口而且构造函数没有带参数的情况下可以不用绑定到容器,在解析的时候会自动反射出来的
生产环境优化
1 | $ php artisan config:cache # 配置缓存 |
安装
1 | $ composer global require "laravel/installer" |
安装特定版本
1 | $ composer create-project --prefer-dist laravel/laravel=5.5.* blog |
密钥
一般情况下安装程序会自动设置好,如果提示错误,请执行以下命令:
1 | $ php artisan key:generate |
phpredis (pecl)
config/database.php
1 | 'redis' => [ |
禁用 CSRF 保护
app\Http\Kernel.php
注释掉以下几行。
1 | App\Http\Middleware\VerifyCsrfToken |
其他
在 ./config/app.php
中 aliases
过的类,直接 use 类名,不要 use 完整路径。
1 | use App; // 推荐 |
辅助函数
通过使用函数实现功能
1 | cache(['key'=>1], 5); // 在数组中设置值 |
Facades
通过调用类的静态方法实现功能。
1 | Cache::set('key', 'value', 5); |
Contracts 契约
路由
1 | Route::get(); |
中间件
app\Http\Middleware
1 | // 新建中间件类 |
注册中间件
app\Http\Kernel
1 | protected $middleware =[ |
控制器
__invoke
魔术方法来定义单个控制器。
1 | public function __construct(){ |
响应
1 | $response($content) |
日志
1 | Log::emergency($message); |
文件
1 | $request->file('photo'); // ->photo; 也可以直接通过文件名调用 |
Session
1 | Illuminate\Http\Request 实例 |
Cookie
1 | Illuminate\Http\Request 实例 |
文件系统
建立链接 storage/app/public
-> public/storage
1 | $ php artisan storage:link |
1 | Storage::disk('local')-> |
邮件
1 | $ php artisan make:mail MailClass |
在 build
方法中完成邮件的配置
1 | Mail::to()->send(new MailClass); |
消息通知
1 | $ php artisan make:notification NotificationClass |
1 | class DemoClass |
事件
事件(Events) 监听器(Listeners)
例如一个 用户注册事件 可以对应 邮件 短信 等监听器
控制器中调用一个事件
event(new MyEvents());
将 事件 与 监听器 注册
EventServiceProvider
$listeners=[‘事件’=>[‘监听器’,’监听器2’]]
监听器接收 事件 示例 进行逻辑处理
监听器可以放入队列中