一、PHP/Laravel/Middleware/Log
1、创建 php artisan make:middleware MyMiddleware
位于app\Http\Middleware
2、注册中间件
app\Http\Kernel.php中$middleware中的为全局中间件,就是每一个http请求都会执行这里面的中间件
$routeMiddleware 里面是路由中间件,在路由中
Route::get('admin/article',['middleware'=>'my'],function(){
});
3、BeforeMiddleware / AfterMiddleware 前置 / 后置
二、Laravel事件
事件类保存在app\Events 监听类位于app\Listeners
事件为键 监听为值;触发事件 -(传值->)- 监听执行对应服务
1、执行
在app\Providers\EventServiceProvider.php 的protected $listen = [];里面写事件和监听的对应关系
执行 php artisan event:generate后在对应的两个文件夹内就创建好了事件和监听文件
触发事件
例:$post = Article::find(1);
$post为一条从数据库取出来的数据~
Event::fire(new OneEventToManyListeners($post));
传递$post给OneEventToManyListeners事件
这样我们在访问控制器时,里面的Event::fire(new OneEventToManyListeners($post));就会触发事件,然后依次执行1/2/3监听,最后将title修改为‘涩3’。如果需要在监听2里面停止向下传递,就直接return false;
event(new OneEventToManyListeners($post));也可以触发事件。
二、CentOS下安装apache、mysql、php
VMware里面安装了CentOS6.7
安装 apache
在命令行下输入 : yum install httpd 回车
输入:etc/init.d/httpd start 启动apache服务
安装mysql
输入:yum install mysqld
光安装mysqld是不够的,还要安装mysql-server
继续输入:yum install mysql-server 确定,同上说明已经安装成功。
然后启动mysql服务,输入/etc/init.d/mysqld start 如图显示说明启动成功
安装php
输入命令 yum install php
同上显示conplete之后说明安装成功,接下来要安装几个组件
输入:yum install php-mysql 此组件用来连接PHP和mysql
然后再安装一下另外几个扩展
//安 装apache扩展
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
//安装php的扩展
yum install php-gd
yum -y install php-gd php-xml php-mbstring php-ldap php-pear php-xmlrpc
// 安装mysql扩展
yum -y install mysql-connector-odbc mysql-devel libdbi-dbd-mysql
输入 127.0.0.1 apache首页
自己的项目默认在 /var/www/html文件夹下
配置文件在/etc/httpd/conf/httpd.conf和/etc/httpd/conf.d/php.conf.
在/var/www/html/下建phpinfo.php
<?php
phpinfo();
?>
浏览器输入127.0.0.1/phpinfo.php