2016.01.19

一、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事件

要在監聽里取得事件屬性,所以把post屬性設置成傳過來的$post
事件和3個監聽
監聽1
監聽2
監聽3

這樣我們在訪問控制器時,里面的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

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容