@composer

Stories List
@zjkal

⏱️TimeHelper——一個簡單快捷的PHP日期時間助手類庫

TimeHelper 是一個簡單易用的PHP時間日期助手類庫,可以快速實現常用的時間日期操作,比如獲取指定時間的秒數,獲取友好的時間格式,判斷時間範圍,計算兩個時間相差值,返回N小時/天/星期/月/年前或者後的時間戳等等 🧩特性 簡單易用: 不依賴任何擴展,開箱即用 化繁為簡: 所有方法都可以傳入任意類型的時間日期格式或時間戳 快捷高效: 所有操作只需要一個靜態方法即可完成 長期維護:

zjkal Avatar

@zjkal

Nickname zjkal

@jianfei

Composer 源管理

抄襲至此,節省搜索時間 ,方便開發時複製 當前項目切換 composer config repo.packagist composer {source} 全局切換 composer config -g repo.packagist composer {source} 全局查看配置 composer config -g -l 當前項目查看配置 composer conf

jianfei Avatar

@jianfei

Nickname 濰坊老登程序員

@tangqingfeng

Php composer 基礎教程

一、什麼是Composer? Composer 是 PHP 中的依賴管理工具。它允許聲明項目所依賴的庫,並且它將為您管理(安裝/更新)它們。 二、如何安裝? Linux 系統和 MacOS 系統 直接下載最新穩定版: 然後執行下列命令,放到/usr/local/bin下面 sudo mv composer.phar /usr/local/bin/composer sudo chmod +x /

tangqingfeng Avatar

@tangqingfeng

Nickname 唐青楓

@wujingquan

用 Go 寫了個 Composer 版本管理器 CVM

Github:https://github.com/wujingquan/cvm 歡迎PR,各位巨佬使用。 CVM for Windows 消除了在Windows上的CLI中更改Composer 版本的麻煩。 這個包有一個比nvm更小眾的用例。當在Windows上開發並使用集成終端時,很難讓這些終端真正聽取PATH的變化。 這個實用程序改變了這一點。 安裝 到Github Releases

wujingquan Avatar

@wujingquan

Nickname wujingquan

@aoshunseo

PHP Composer 使用方法指南

PHP Composer 使用方法指南 Composer 是 PHP 的依賴管理工具,它允許開發者輕鬆地管理項目中的庫和依賴項。以下是使用 Composer 的基本步驟和方法。 1. 安裝 Composer 在使用 Composer 之前,首先需要安裝它。可以通過以下命令在終端中安裝 Composer: php -r "copy('https://getcomposer.org/installer

aoshunseo Avatar

@aoshunseo

Nickname 奧順互聯

@zxc7563598

從零開始創建屬於自己的 Composer 庫

Composer 是 PHP 領域最流行的依賴管理工具,它使得管理項目依賴變得輕鬆簡單。然而,除了使用現有的包,我們也可以創建和發佈屬於自己的 Composer 包。 在這篇文章中,我將帶你一步一步完成從零開始創建併發佈一個自己的 Composer 包的流程。 創建項目 在你的工作目錄下創建一個新的文件夾作為你的包: mkdir project cd project 初始化 Composer

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@big_cat

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

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

big_cat Avatar

@big_cat

Nickname big_cat

@zxc7563598

訂單號老是撞車?我寫了個通用 PHP ID 生成器

在日常開發裏,我們經常會遇到這種情況: 需要給訂單生成唯一編號; 想給日誌或者資源加個標識; 或者需要一個不會重複的 ID,用作數據庫主鍵。 一開始,我也用過 time() 拼接隨機數、或者 uniqid()。 這些方案在小項目裏夠用,但一旦放到併發稍微高點的業務裏,就會出現各種問題: ​time() 很容易撞車(同一毫秒可能生成多個); ​uniqid() 看上去獨特,其實

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@zjkal

📦MysqlHelper——一個便捷的MySQL導入導出的助手類庫

MysqlHelper 是一個便捷的通過PHP導入和導出Mysql數據庫表結構和數據的工具,可以快速實現mysql的數據庫的導入和導出. 🧩特性 簡單易用: 僅依賴mysqlli擴展,開箱即用 靈活操作: 兼容主流框架,使用更方便 長期維護: 作者為自由職業者,保證項目的長期穩定和持續更新 🚀安裝 通過Composer導入類庫 composer require zjkal/mysql

zjkal Avatar

@zjkal

Nickname zjkal

@yanwushu

如何優雅地切換 composer 鏡像

總所周知,使用 composer 的時候,切換鏡像是一個剛需。但是操作頻率説高不高,説低也不低,往往需要切換鏡像的時候偏偏記不住命令。這時,我都會到網上搜索切換鏡像的命令,以及有哪些鏡像站點可用。 在 Xserver 中優雅地實現了這個功能。只需要鼠標點擊一下即可快速切換鏡像,即時生效。 Xserver內置了阿里雲、華為雲、騰訊雲和默認鏡像,你可以在這些鏡像之間隨意快速切換。 馬上使用更優雅、強

yanwushu Avatar

@yanwushu

Nickname yanwushu

@zxc7563598

判斷邏輯越寫越亂,我乾脆做了個自己的規則引擎

不知道你有沒有這種感覺:一個業務功能看起來很簡單,但判斷條件卻一大堆。 什麼用户狀態、配置項、商品屬性、會員等級…… 一大堆 if​ / else​ 交織在一起,越寫越亂,稍微改一個邏輯就要擔心影響其他地方。 我之前就遇到這樣的情況,一開始還能忍,後來乾脆決定:不如自己寫一個簡單的規則引擎,專門用來處理這些組合判斷。 於是就有了這個項目:hejunjie/simple-rule-eng

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@zxc7563598

如何優雅地處理多種電商優惠規則?我用 PHP 封裝了一個 Promotion Engine

做電商項目時,經常要處理各種各樣的優惠活動:滿減、打折、VIP 專屬優惠、第二件特價、階梯優惠…… 這些單獨實現起來都不復雜,但當你把它們放在一起,就變得混亂起來了。 我自己在工作裏寫過不少類似的邏輯,每次做法差不多:if/else、switch、各種判斷混在一起,過幾個月回頭看代碼,根本不想維護。 於是我乾脆寫了一個小庫,封裝了常見的優惠計算邏輯,讓這件事更清晰,也能隨時在別的項目裏

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@zxc7563598

構建一個簡潔優雅的 PHP 參數驗證器 —— php-schema-validator

在日常開發中,參數校驗是繞不過的一道坎。我們常常需要確保用户傳入的數據符合預期格式,比如必填字段、數據類型、最大長度、郵箱格式等等。雖然許多 PHP 框架都內置了驗證器,但在開發輕量服務、非框架項目,或需要在業務中後端進行結構化數據校驗時,我總覺得現有方案不夠靈活、冗餘較多。 於是,我動手寫了一個開箱即用、易擴展、輕量級的參數驗證器:php-schema-validator 為什麼要造這個輪子?

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@zxc7563598

PHP 項目裏,哪些功能讓你一次次「重複造輪子」

寫 PHP 第 7 年了,我發現有些功能簡直像韭菜——項目一換就得重新割一遍。 手機號歸屬地、參數校驗、唯一 ID、地址解析……是不是你也寫過不止一次? 有些功能不難,但就是麻煩: 做個小商城,要寫個 促銷規則引擎 做個 API,就得來一遍 參數驗證器 做用户註冊登錄,要寫個 TOTP 動態口令 做支付結算,要造個 唯一 ID 生成器 這些功能並不是多複雜的“高大上算法”,但就是又常見

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@zxc7563598

RSA+AES 混合加密不復雜,但落地挺煩,我用 Vue+PHP 封裝成了兩個庫

在項目裏寫接口的時候,我有時候會希望再多一層保護。 雖然 HTTPS 已經能保證傳輸安全,但它解決的更多是「傳輸過程中不被竊聽/篡改」的問題。 而我還想順帶做到幾點: 防止接口被隨便模擬調用 就算數據包被截獲,也看不懂內容 就算有人拿着同一份請求去重放,服務端也能拒絕 這些需求其實挺常見的,但並不複雜,説白了就是一套 RSA+AES 混合加密。 經典的思路 原理本身沒什麼新

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉

@zxc7563598

一個小項目的記錄:PHP 分賬組件

最近整理了一個自己做的小項目——PHP Trade Splitter ,是一個交易/利潤分賬組件。今天想分享一下,也算是記錄自己的小成果,也順便展示一下技術思路。 為什麼會做這個包 説白了,就是因為工作/項目里老是碰到分賬邏輯: 平台抽成 作者收益 代理或渠道分潤 階梯獎勵 多級遞歸計算 以前都是直接寫死在業務裏,每次改需求都得重構,越改越心累。 於是我想:乾脆抽象出來,做一個通用

zxc7563598 Avatar

@zxc7563598

Nickname 蘇琢玉