2021 年,中秋節快樂
兩年前意外的在線上做了一次家教,教學生有關 PHP 與 Laravel。
今天這位學生傳了訊息給我。
兩年前意外的在線上做了一次家教,教學生有關 PHP 與 Laravel。
今天這位學生傳了訊息給我。
想像用口頭或文字描述 Git Flow 流程:首先在 develop 開 feature 分支,然後完成後合併回 develop。接著上線要在 develop 開 release 分支,定版後即可合併進 master 並 tag 版本…
這樣的描述已經非常難懂了,若是用口頭說明可能就跟講 rap 一樣難懂。俗話說的好--「一圖勝萬言」,今天要介紹的 gitdags 是畫 Git Log 的工具,把圖畫好畫面,可以讓團隊在溝通 Git 流程過程更順利。
PHP 的運作原理是先把 PHP 原始碼編譯成 opcodes 再開始進 Zend VM 和 CPU,這部分可以參考 2020 介紹 PHP 8 的簡報,裡面第 12 頁剛好有提到 PHP 從解析到進 CPU 的流程。
在討論 PHP 效能的時候,除了直接寫 benchmark 測試以外,還有另一個方法是查編譯出來的 opcodes 為何。而本篇文章的重點會是試著把 opcodes 抓出來,做些簡單的比較。
PHP 的 isset() 和 empty() 是解析變數常用的語言結構,兩者用法很接近,有時一不小心就會誤用。
這是一個老掉牙的主題,隨便 Google 都一堆比較文,官網也有描述它們的差異。但我還是決定重覆造輪子,主要是想把 array_key_exists() 函式拿來一起討論。
以前就有看過 Kibana 的各種資料呈現功能。最近因工作需求,所以研究了一下 Kibana 用法,同時記錄這份筆記。
主要是因為手邊只有現成的 log 檔案,但沒辦法用簡單的 grep 指令來達成複雜的功能,因此才會參考 Kibana 的做法。
在不對的時間看到對的問題,一不小心就花了太多時間在上面了。
這是蠻多人會有的疑問:JWT 已經實現無狀態 API 了,為什麼還要額外實作狀態機制?
軟體開發的起手式,就是準備環境。官方文件寫的非常詳細,以下就以個人經驗重點講一下。
因工作有用到 Laravel,加上覺得自己也想多練練文筆,於是開了這個系列。