Laravel npm install dev 出現 cross-env 錯誤解法
在使用 Laravel 裡面的 Vue Components 時,會需要使用到編譯 vue js 的功能
例如,修改 ExampleComponent.vue 之後,要執行以下語法才會將修改編譯到 app.js
npm run dev
Laravel 在 mac 或 linux 環境下,可能會出現 cross-env 相關錯誤訊息
Continue Reading在使用 Laravel 裡面的 Vue Components 時,會需要使用到編譯 vue js 的功能
例如,修改 ExampleComponent.vue 之後,要執行以下語法才會將修改編譯到 app.js
npm run dev
Laravel 在 mac 或 linux 環境下,可能會出現 cross-env 相關錯誤訊息
Continue Reading在swoole 官方介紹到運作原理時,就有針對 swoole 運作方式與 PHP-FPM 的差異進行比較
傳統 PHP-FPM 是基於 PHP Server 來解析
而 Swoole 則是用 C 所編譯的 PHP 擴充,可以直接透過 CLI mode 與 server 溝通
這一點差異就讓 swoole 能做到傳統 php model 無法達成的事情
讓 PHP 開發者可寫出高效能、可拓展的程式
並且可以直接設計 no-blocking I/O 程式,以及與底層 linux kernel 溝通
其中包括幾點:
…
Continue Reading在這裡記錄一下 FastCGI 與 PHP-FPM 的關係
FastCGI 是一個協定,從字面上其實就能看到 Fast + CGI,意思就是加速CGI
CGI 是一個協定,在webserver接收到請求時,會跟請求內容進行對應處理,再返回對應文件給瀏覽器
Continue ReadingLaravel 的 requests 可以將請求所需要的驗證進行分離,在這裡主要談一談 Requests 的建立方法 ,以及針對它進行測試的一些方式進行說明。
首先,建立一個 Requests
Continue Reading這裡記錄如何運用 migrate 及 Seeds 來建立自動部署流程
Continue Reading這裡列出幾個推薦使用的Visual Studio Code 利於 Laravel 開發的套件
Continue ReadingPHP 提供了一個將變數參照到函式中的功能
只要在定義 function 時,將要參照的變數前面加上 & 就可以宣告為參照
例如:這裡範例定義了函式以及參數設定為參照 - myfun(&$x)
Continue ReadingThere show how to custom a php artisan command
first create your custom command
This will auto generate a file in app/Console/Command/Tests/TestOutput.php
and setting a relative command for calling this file in terminal command
Continue ReadingLaradock 在 Laravel 社群相當知名,它提供了完整套件 Docker-Images及相關設定
讓我們能很簡單的就部署好完整的 Laravel 開發環境
當然也可以支援其他PHP專案,像是 Symfony, CodeIgniter, WordPress 等
這裡介紹如何快速的透過 Laradock 安裝 NGINX, PHP, Composer, MySQL, Redis 及 Beanstalkd
Continue ReadingLaravel 為了讓PHP開發整體體驗都能完善,在local開發的環境設定也提供了相關解決方案
也就是這裡要介紹的 Homestead
Laravel Homestead 是官方所維護的 Vagrant box pre-package
讓你可以直接透過這個環境開發,而不必再獨立安裝PHP、Web server…等軟體
並且不必擔心忘記系統設定,因為 Vagrant boxes 是一次性設定安裝完畢,
如果在安裝流程有發現錯誤,隨時都可以重新安裝環境,並且只需要幾分鐘的時間就能完成
Continue Reading通常,MACOS Sierra都會預設安裝PHP5.6版本
這裡針對升級到更高階PHP版本流程進行說明:
可以透過brew 或者 curl 兩種方式來安裝 Brew
brew update && brew upgrade
brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/homebrew-php
brew unlink php56
brew install php72
(如果要從7.1升級到7.2,作法如下:)
brew tap homebrew/homebrew-php
brew unlink php71
brew install php72
brew install php72-xdebug
在這過程中,如果php5.6不是透過 brew 安裝,很可能會發生錯誤
這時仍可以繼續透過 CRUL的方式來安裝
curl -s http://php-osx.liip.ch/install.sh | bash -s 7.2
安裝完畢後,可以透過下方語法檢查PHP版本
php -v
如果還無法取得到PHP7版本,可以透過輸入下面的指令來更新路徑,來取得正確版本
vim ~/.profile
# 將下面這行加入~/.profile 最後一行
export PATH=/usr/local/php5/bin:$PATH
# 離開後,接著執行
source ~/.profile
上方的路徑,可能要依照你的環境來進行調整 如果上方指令仍無法運作,最後可以再試試這個方式
export PATH="$(brew — prefix homebrew/php/php72)/bin:$PATH"
祝安裝順利,也別忘了幫我按個讚
Continue Reading跨域資源共享 CORS (Cross-origin resource sharing) 是一個 W3C 標準
這裡主要針對 php (Laravel) 以及 nginx 如何設置 CORS 進行說明
以及 Laravel 5.5 之後的版本自定義 cros Middleware 踩過的坑進行紀錄
首先,先看一般原生PHP設定 cors 的方式
Continue Reading通常會使用 user agent 來判斷來源裝置
在 PHP 可以使用下方式來取得 user agent
<?php
$user_agent = $_SERVER['HTTP_USER_AGENT'];
會將config內容合併保存在 /bootstrap/cache/config.php 重新設定.env 時,直接輸入這個指令就能更新設定內容
php artisan config:cache
可以用以下命令清除訊息緩存配置
php artisan config:clear
Continue Reading
這裡記錄一下,在 Nginx + PHP 環境無法取得 Http Get Request 的問題
在本機端,使用的是 apache 環境,會需要取得網址上的Get參數
<?php
public function index(Request $request) {
$message = $request->message;
...
}
上傳至 Server Side (Nginx 環境) 卻發現無法取得參數
這時先測看看完整網址以及檢查$_GET
<?php
public function index(Request $request) {
echo $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
print_r($_GET);
確定在 localhost 確實能完整捕捉到 Localhost 結果如:
http://localhost:8000?message=hello
Array
(
[message] => hello
)
但是在 server 上面有捕捉到完整網址,但同樣輸出的是空的 $_GET Server 輸出結果如:
http://example.com?message=hello
Array
(
)
正式 Server 使用的是 Nginx
前往Server 設定中,檢查一下 nginx.conf ,發現原因是
Continue ReadingPHP COdeSniffer 包含了兩個 PHP script
在 VS Code 會使用下面這個擴充