動態

@kip_67231fa160bbc

2025年PHP會更加火爆嗎?

PHP在2025年不僅蓬勃發展,更成為了現代Web開發不可或缺的中堅力量。從高性能應用到雲原生架構,甚至serverless領域,PHP早已超越了傳統的網頁開發,完美契合現代開發的需求。PHP 8.x的發佈,為其注入了JIT編譯器、Fibers、以及一系列現代語言特性,不僅增強了其競爭力,更提升了其可擴展性、效率和處理複雜應用的潛力。 PHP的韌性和適應性使其在新老開發者羣體中始終保持着強大的吸引

@yanwushu

Xserver v1.4.3 發佈——支持服務一鍵重啓和多實例同時下載

馬上使用簡單、高效的 PHP 集成開發環境!https://x-server.ltd 1.4.2之前,mysql、nginx 、redis、php 等服務,只能開啓或者關閉服務。當某些情況下(比如修改了配置文件)需要重啓服務的時候,關閉、打開操作就變得有些麻煩。 Xserver 始終將服務搭建簡單化和操作簡單化作為產品核心特性,所以在 1.4.3 版本中主要給大家提供了所有服務一鍵重啓的功能。操作

yanwushu 頭像

@yanwushu

昵稱 yanwushu

@yanwushu

Xserver v1.4.4 發佈—— 創建站點更加方便快捷

距離上次更新(2024-11-10) 4 天之後,今天給大家帶來 1.4.4的更新。 🎉 支持 localhost 域名。之前的版本只支持 test.com 這種類型的域名,現在我們添加了 localhost 域名的支持。 🎉 支持域名後自定義端口號。之前的版本只支持 test.com 這種類型的域名,現在我們添加了 localhost:8080、test.com:81 這種域名的支持。 🎉

yanwushu 頭像

@yanwushu

昵稱 yanwushu

@yanwushu

Xserver 1.4.5 發佈——和swoole一起為你提供簡單、強大功能

距離上次更新(2024-11-14) 7 天之後,今天給大家帶來Xserver 1.4.5的更新。 近期接到不少用户反饋,大家對 swoole 的需求還是比較多的。所以就提前實現 swoole 擴展的支持。 swoole 是一個高性能的基於協程的引擎,用來構建高性能系統。 有了 swoole 擴展的加持,Xserver可以為大家提供更加強大的環境支持。讓你在快速構建系統的路上一往無前! 本次更新為

yanwushu 頭像

@yanwushu

昵稱 yanwushu

@yanwushu

v1.4.6——新增引導性debug,讓你更簡單的找到問題

距離上次更新(2024-11-21) 5 天之後,今天給大家帶來 1.4.6 的更新。 本次更新為大家帶來更加貼心的引導性功能。 好的軟件應該是一個有服務意識的服務員。總在你需要的時給你適當的建議。按照服務員的指導建議,快捷的達到使用者的目的。 Xserver的開發理念就是簡單、靈活、服務用户。所以在這個理念的指導下我們升級了以下功能,變動雖然很小,但是在工作場景中將大大提升你的生產力。 當 Ng

yanwushu 頭像

@yanwushu

昵稱 yanwushu

@weiyi_5b04fb4aa815a

Laravel 多態關聯的模型本地化套用

Laravel 多態關聯的模型本地化套用 前言 在項目中,一般情況下,我們可以使用單個字段來創建一個一對一或者一對多關聯,比如一個 User 有多個 Post。 而除了這些,我們偶爾會遇到一些關聯關係除了需要根據 ID 進行關聯外,還可能需要根據不同的 Type 去關聯不同的模型,而這,就是多態關聯。 在 Laravel 中,為我們提供了開箱即用的多態關聯。 準備環境 軟件

weiyi_5b04fb4aa815a 頭像

@weiyi_5b04fb4aa815a

昵稱 唯一丶

@tim_xiao

Laravel10 docker鏡像

查看官方文檔 獲取php版本要求https://laravel.com/docs/10.x/installation laravel10 安裝指南 1:本地已經有laravel項目 將項目打包成鏡像文件,用於後續k8s等環境部署 參考 這裏 https://github.com/docker-library-tim/laravel10 使用基礎鏡像:docker pull xiaotim/php

tim_xiao 頭像

@tim_xiao

昵稱 tim_xiao

@leeqvip

利用 PHP-Casbin 中的優先級模型來做權限控制

優先級模型,所謂優先級,是指按一定的順序加載策略。 優先級高的策略先加載,先加載的策略具有較高的優先級。 PHP-Casbin 目前支持三種模式:隱式優先順序加載策略、顯示優先順序加載策略、基於角色和用户的層級關係加載策略。 優先級模式的配置在model.conf中的policy_effect中配置。 隱式優先順序加載策略 隱式優先級模型配置在官方倉庫的 examples 目錄下 priority

leeqvip 頭像

@leeqvip

昵稱 JonLee

@big_cat

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

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

big_cat 頭像

@big_cat

昵稱 big_cat

@alixitongruanjianjishu

Laravel 使用通義靈碼 - AI 輔助開發提升效率

一、引言 Laravel是PHP常用的一種後端開發框架,遵循MVC(模型-視圖-控制器)架構,以簡潔、優雅的語法和強大的功能著稱,旨在提升開發效率並簡化複雜任務的實現。然而,它的開發習慣可能與傳統的PHP開發方式有所不同,對於新手來説,上手Laravel可能會面臨一定的學習曲線。此時,擁有一位AI導師輔助指導,將大大降低上手難度。本文將以通義靈碼為例,介紹如何使用這一AI工具輔助開發Laravel

alixitongruanjianjishu 頭像

@alixitongruanjianjishu

昵稱 阿里云云原生

@yunxiao0816

Laravel 使用通義靈碼 - AI 輔助開發提升效率

一、引言 Laravel是PHP常用的一種後端開發框架,遵循MVC(模型-視圖-控制器)架構,以簡潔、優雅的語法和強大的功能著稱,旨在提升開發效率並簡化複雜任務的實現。然而,它的開發習慣可能與傳統的PHP開發方式有所不同,對於新手來説,上手Laravel可能會面臨一定的學習曲線。此時,擁有一位AI導師輔助指導,將大大降低上手難度。本文將以通義靈碼為例,介紹如何使用這一AI工具輔助開發Laravel

yunxiao0816 頭像

@yunxiao0816

昵稱 雲效DevOps平台

@gvison

從PHP到Go:如何優雅地從Laravel舒適圈平滑過渡到Sponge的真香體驗

PHP 老司機的自白 各位 PHPer 老鐵們!咱們寫 PHP 那叫一個"隨心所欲"——變量想變就變,類型説轉就轉,Laravel 框架一搭,Artisan 命令一敲,項目就像變魔術一樣"噌"地就上線了!是不是覺得自己就是代碼界的哈利波特?🧙 但是當你的網站訪問量像坐火箭一樣飆升,或者老闆突然要搞微服務架構時,是不是發現 PHP 有點"力不從心"了?這時候 Go 語言這個"性能怪獸"就開始對你拋

gvison 頭像

@gvison

昵稱 gvison

@big_cat

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

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

big_cat 頭像

@big_cat

昵稱 big_cat

@big_cat

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

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

big_cat 頭像

@big_cat

昵稱 big_cat

@weiyi_5b04fb4aa815a

分享一個 php 包,安全的使用內置函數方法:thecodingmachine/safe

前言 在 PHP 的一些歷史遺留設計中,許多函數在出錯或失敗時會返回 false、-1 或 null 等特殊值。如果你沒有對這些返回值進行正確檢查,就可能導致程序行為不符合預期。 舉個例子 $content = file_get_contents('foobar.json'); $foobar = json_decode($content); 在這段代碼中: 如果 foobar.json 不

weiyi_5b04fb4aa815a 頭像

@weiyi_5b04fb4aa815a

昵稱 唯一丶

@kinra

Laravel 項目開發規範

Laravel 項目開發規範 1. 建立開發規範之目的 對於框架設計而言,靈活是件好事,能提供給開發者不同的選項,能讓框架適用更多的場景。 但對於團隊開發來説,大部分時候,更多的選項反而是累贅。因為每個人都可能寫出不一樣的代碼,這無疑增加了項目維護的難度,影響效率。如果是在一箇中大型的商業項目開發中,團隊中有着幾個甚至十幾個開發者,沒有規範的情況下,開發者會根據各自的喜好去選擇,有時甚至出現

kinra 頭像

@kinra

昵稱 kinra

@muzijun_68c14af5563a2

緩存排序算法

緩存排序算法(Cache-Aware / Cache-Oblivious Sorting) 目標:讓排序過程儘可能在 L1/L2 緩存內完成,減少 DRAM 帶寬與 TLB miss,從而在 MB~GB 級數據上獲得幾倍甚至十幾倍加速。 分為兩條路線: Cache-Aware(需手動指定緩存大小) Cache-Oblivious(無需參數,理論最優) 1 性能瓶頸

muzijun_68c14af5563a2 頭像

@muzijun_68c14af5563a2

昵稱 木子君_求贊

@muzijun_68c14af5563a2

堆排序算法介紹

堆排序(Heap Sort)完整指南 維度 內容 核心思想 用數組模擬完全二叉堆,反覆彈出最大值(或最小值)完成排序 平均複雜度 O(n log n) 最壞複雜度 O(n log n) (無退化) 額外空間 O(1) (原地) 穩定性 否 (相等元

muzijun_68c14af5563a2 頭像

@muzijun_68c14af5563a2

昵稱 木子君_求贊

@muzijun_68c14af5563a2

帶緩存的Timsort排序算法 c++示例

在原生 Timsort 基礎上,增加顯式緩存友好策略: 歸併緩衝區複用(對象池) 分段預取(software prefetch) 塊大小與 L2 容量對齊 實測 1e7 int 相比 std::stable_sort 再快 15~25%,內存峯值相同。 1 設計要點 緩存策略 實現方式 收益 緩衝區池

muzijun_68c14af5563a2 頭像

@muzijun_68c14af5563a2

昵稱 木子君_求贊

@muzijun_68c14af5563a2

帶緩存的堆排序 c++示例

帶緩存的堆排序(Cache-Optimized Heap Sort)——C++ 實現 目標: 讓 sift-down 始終落在 L2 緩存 內 消除 頻繁 new/delete(緩衝區池) 用 軟件預取 隱藏 DRAM 延遲 實測 1e7 int 相比 std::make_heap + std::sort_heap 再快 20~30%,內存峯值仍 O(1)

muzijun_68c14af5563a2 頭像

@muzijun_68c14af5563a2

昵稱 木子君_求贊

@muzijun_68c14af5563a2

帶緩存的Learned Sort 2.1排序算法

下面給出一份“一句話就能落地”的導讀: Learned Sort 2.1 的核心賣點是 「用機器學習模型代替傳統 pivot / radix,把元素一次性扔進幾乎正確的位置」,而 2025 年 MIT 團隊在 2.1 基礎上追加的 緩存優化層(Cache-Optimized Learned Sort)才是本文重點——它讓算法在 L3 的數據量 下仍能保持 Radix 級吞吐 且 內存佔用不爆炸。

muzijun_68c14af5563a2 頭像

@muzijun_68c14af5563a2

昵稱 木子君_求贊