动态

列表
创建 时间

curl 命令行 url 中傳遞中文參數的方法

當我們在命令行中使用 curl 請求某些 url 時,如果參數中包含了中文,則需要對其進行 urlencode 編碼,才能正常的傳遞到服務端,之前一直先轉碼再 curl,後來發現其自帶了編碼選項 --data-urlencode,如下: curl \ -G https://www.yoursite.com/search \ --data-urlencode 'wd=我的' 即可正常發送中文參數至服

创建 时间

docker 構建本地 php-cli 環境安裝 composer 依賴

有時我們只需是需要使用 php-cli 去安裝一些 composer 依賴,然而在本地安裝 php 耗時費力,在一些老系統上還會有各種版本限制,比如我的 MacOS11 因為不被 asciidoc 支持(特麼的,MacOS12也不被支持...),導致無法成功安裝。 所以轉為 docker 容器變相實現,掛載項目工作目錄到容器的工作目錄上,在容器中的環境下,安裝依賴。 cd your_project

创建 时间

composer 版本號表達式:^ / ~ / *

版本號規則 主版本號.次版本號.修訂號 ^ 表示除主版本號,其他段都可以變 "php": "^7.3|^8.0" 表示 7.3 = 版本號 8.0 或 8.0 = 版本號 9.0 "php": "=7.3,8.0" 表示 7.3 = 版本號 8.0 ~ 下一個主要版本段 "mockery/mockery": "~1.3" 表示 1.3 = 版本號 2.0 "mockery/mockery"

创建 时间

laravel 小技巧:為日誌組件的非默認通道註冊全局上下文 context

在使用 laravel 的日誌組件(Facade門面模式)時,我們可以通過 withContext 方法為請求週期註冊全局的上下文信息,用來做 RequestID/TraceId 類的請求鏈路追蹤,非常的方便。但在 10- 以下的版本中,withContext 只能為默認日誌通道注入全局上下文,在非默認通道的場景,比如 cli 下, 就無法優雅的實現了。 但如果你瞭解 Service,Servic

创建 时间

laravel-octane(frankenphp) 體驗及性能壓測

今天做一篇 laravel-octane 以 frankenphp 作為服務引擎的體驗及性能壓測。硬件配置與前2篇的相同,環境為 php8.3 + laraval12 + mysql8.4(版本不必太在意,=php8, =laravel8, =mysql7 區別都不大)。 測試基礎硬件 先説結果,非常ok:cpu 密集型 場景最優 3.5k 的qps;io 密集型 場景最優 2k 的 qp

创建 时间

Dcat Admin 為模型生成器追加屬性註解

Dcat Admin 自帶了 Model 模型生成器,但生成的類中並沒有表字段對應的 @property 屬性註解,這裏對源碼做了一些修改和完善,增加了對應字段的註解。 NOTICE: 僅限使用數據庫中已存在的表生成模型類的場景,如果是通過面板創建新表則不能(兼容起來太麻煩了) 需要修改或配置如下3文件 1. 模型類模版 src/Scaffold/stubs/model.stub ?php