程序员茄子
全部
编程
代码
资讯
案例
综合
联系我们
PHP 相关技术文章(第4页)
php
mysql
shell
go
vue
css
api接口对接
支付接口对接
reli-prof:不装扩展、不改目标代码,从进程外采样 PHP 调用栈与内存图
代码
reli-prof:不装扩展、不改目标代码,从进程外采样 PHP 调用栈与内存图
2026-10-06 21:32:20
reli-prof 是用 PHP 写的采样剖析器:不加载扩展、不改目标代码,从进程外通过 ptrace/FFI 读 Zend Engine,做调用栈采样、火焰图 TUI 与内存图分析。附 inspector:trace/rbt:analyze/rbt:explore、内存 dump/report/compare 等命令与 1.00–1.06× 开销数据。
PHP
性能分析
Profiler
调试
VM
PHP 8.5 管道操作符 |>:把嵌套调用拆成从左到右的转换链
编程
PHP 8.5 管道操作符 |>:把嵌套调用拆成从左到右的转换链
2026-10-06 21:31:48
PHP 8.5 的管道操作符 |> 怎么用:从字符串/数组/错误处理实例出发,讲清单参数 callable 约束、多参数函数要包装、箭头函数必须加括号、引用传递 callable 不允许、操作符优先级等限制,并给出从嵌套调用迁移到管道的重构清单。
PHP
PHP8.5
管道操作符
函数式编程
管道
闭包
8.5
VS
Laravel 14 最低 PHP 抬到 8.4:从 master 分支看到的 2027 Q1 排期
资讯
Laravel 14 最低 PHP 抬到 8.4:从 master 分支看到的 2027 Q1 排期
2026-10-06 21:04:19
从 laravel/framework master 分支看到的前瞻信息:Laravel 14 预计 2027 Q1,最低 PHP 从 8.3 抬到 8.4(因 Symfony 8 要求 PHP 8.4),并列 Laravel 11–14 的 PHP 范围与 bug/安全支持到期。附按现有版本的升级排期建议。
Laravel
PHP
框架
升级
PHP 8.6 弃用清单:升级前先跑一遍这行 grep
编程
PHP 8.6 弃用清单:升级前先跑一遍这行 grep
2026-10-06 21:02:57
PHP 8.6 的弃用清单:is_double/is_integer/is_long/doubleval、spl_object_hash、mb_ereg*、dechunk 过滤器、从 finally/构造析构返回值、mysqli::stmt_init 等。弃用只在 8.6 报警告,移除在 PHP 9。附一行 grep 自查与人工复核点。
PHP
8.6
弃用
升级
语法
正则
PHP 8.6 新增 Time\Duration 与 clamp():纳秒时长运算和边界收敛
编程
PHP 8.6 新增 Time\Duration 与 clamp():纳秒时长运算和边界收敛
2026-10-06 21:01:53
PHP 8.6 两个会进入日常业务代码的新增:纳秒精度、约 292 年溢出安全的 Time\Duration 时长类型,以及封装区间限制的全局函数 clamp()。给出构造、加减乘除与比较的写法,并说明各自不适合的场景。
PHP
8.6
Duration
clamp
超时
PHP 8.6 三个 session 默认值转向安全:Lax 会让跨站 POST 丢 session
编程
PHP 8.6 三个 session 默认值转向安全:Lax 会让跨站 POST 丢 session
2026-10-04 21:01:45
PHP 8.6 把 session.use_strict_mode、cookie_httponly 默认设为 1,cookie_samesite 默认 Lax。三者各自防一类攻击,也各自能打断正常应用:Lax 会让跨站 POST 的 SSO 与支付回调丢 session,httponly 打断读 cookie 的前端 JS,strict_mode 拒绝外部传入的 session id。本文给出升级前自查与回退做法。
PHP
PHP8.6
Session
安全
表单
AX
PHP 8.6 部分函数应用:用 ? 预填参数,少写一层 use 和临时闭包
编程
PHP 8.6 部分函数应用:用 ? 预填参数,少写一层 use 和临时闭包
2026-10-04 21:01:45
PHP 8.6 的部分函数应用用 ? 占位符预填部分实参,直接生成 Closure,省掉 array_map 里一层的箭头函数与 use。本文讲清它与一等可调用对象、普通闭包的区别,位置参数带来的可读性取舍,几个常见误用,以及同批只落了一半的闭包缓存优化。
PHP
PHP8.6
闭包
函数式
Laravel 13 发布:最低 PHP 8.3,Cache::touch() 与 Http::pool 默认并发都有改动
编程
Laravel 13 发布:最低 PHP 8.3,Cache::touch() 与 Http::pool 默认并发都有改动
2026-10-02 21:03:10
Laravel 13 于 2026-03-17 发布,最低 PHP 8.3。变化集中在实用处:15+ 处可用 PHP Attributes、Cache::touch() 扩展 TTL 不再取值、Reverb 新增 database 驱动摆脱 Redis、Http::pool 并发默认从 null 改为 2、MySQL 的 DELETE...JOIN 终于尊重 ORDER BY/LIMIT,另有第一方 AI SDK 与 Passkey。
Laravel
PHP
框架
后端
Web开发
GEOFlow 3.0.0 部署笔记:开发与生产两套 Docker Compose 流程
案例
GEOFlow 3.0.0 部署笔记:开发与生产两套 Docker Compose 流程
2026-10-01 21:03:08
GEOFlow 3.0.0 是 Laravel 内容工程与多站点分发平台,含 AI 质检队列、托管站点、签名更新。这里记开发与生产两套 Docker Compose 流程、组件与运行要求(PHP 8.3+/PostgreSQL+pgvector/Redis)以及升级注意事项。
Laravel
PHP
Docker
自托管
内容平台
助手
PHP 8.5 定稿:|> 管道、clone 带 with、#[\NoDiscard],以及一个箭头函数优先级坑
编程
PHP 8.5 定稿:|> 管道、clone 带 with、#[\NoDiscard],以及一个箭头函数优先级坑
2026-10-01 21:02:26
PHP 8.5 正式版的变化按落地方式过一遍:|> 管道操作符与箭头函数必须加括号的优先级坑、clone 函数与 $withProperties、#[\NoDiscard] 配 (void)、闭包进入常量表达式,以及持久化 cURL share handle。
PHP
PHP8.5
管道操作符
clone
新特性
PHP 8.6 闭包优化只合了一半:无状态闭包缓存已落地,static 推断被撤回
编程
PHP 8.6 闭包优化只合了一半:无状态闭包缓存已落地,static 推断被撤回
2026-09-30 21:02:29
PHP 8.6 的闭包优化 RFC 只落地一半:无状态闭包缓存已合并(同词法位置、static、不捕获变量的闭包复用同实例可用 === 判等,Laravel 模板省 2384/3637 次实例化),而“非 static 闭包推断为 static”因 array_map 等内部函数可经命名 callable 做实例调用而被撤回。
PHP
性能
语言特性
闭包
FrankenPHP worker 模式:bootstrap 只跑一次,跨请求状态得自己管
编程
FrankenPHP worker 模式:bootstrap 只跑一次,跨请求状态得自己管
2026-09-29 21:31:24
FrankenPHP worker 模式让 PHP 应用常驻内存、bootstrap 只跑一次,响应进入毫秒级。本文给出 Docker 与独立二进制的启动方式、自定义 worker 脚本写法、MAX_REQUESTS 重启、崩溃指数退避与 max_consecutive_failures,并讲清超全局变量行为:$_ENV 在请求间不重置,静态变量与内存缓存会跨请求保留,需要主动重置。
PHP
FrankenPHP
worker模式
OpenSwoole
常驻内存
Caddy
CAD
php-via:用 OpenSwoole + Datastar 写不碰 JavaScript 的响应式 PHP 页面
编程
php-via:用 OpenSwoole + Datastar 写不碰 JavaScript 的响应式 PHP 页面
2026-09-29 21:31:24
php-via 把响应式状态留在服务端:OpenSwoole 提供异步运行时,Datastar 负责 SSE 与 DOM morphing,Twig 负责模板,全程无构建步骤、无 node_modules。本文给出 composer 安装、signal/action/view 的可跑示例、TAB/ROUTE/SESSION/GLOBAL 作用域、Redis/NATS 多节点广播与 /_health 端点。
PHP
OpenSwoole
Datastar
SSE
响应式
Twig
php-via
PHP 8.5 的 cURL 变化:持久 share handle、INFILESIZE_LARGE 与新的 curl_getinfo 字段
编程
PHP 8.5 的 cURL 变化:持久 share handle、INFILESIZE_LARGE 与新的 curl_getinfo 字段
2026-09-28 21:03:49
PHP 8.5 的 cURL 变化整理:curl_share_init_persistent() 让 share handle 跨请求复用,适合高频同主机场景、不适合多租户;CURLOPT_INFILESIZE_LARGE 绕开 2GiB 限制;新增 CURLINFO_USED_PROXY 等字段与 CURLFOLLOW_* 取值,附代码与坑。
PHP
cURL
HTTP客户端
连接复用
接口对接
PHP 8.6 新增 Time\Duration、clamp() 与 SortDirection:用法与边界
编程
PHP 8.6 新增 Time\Duration、clamp() 与 SortDirection:用法与边界
2026-09-27 21:02:49
PHP 8.6 新增 Time\Duration(纳秒精度、final readonly)、clamp() 与全局 SortDirection 枚举,并允许 readonly 属性带默认值。本文给出各原语的用法与限制、相关 RFC、弃用清单,以及 8.6 从 Alpha 到 GA 的时间线。
PHP
8.6
Time\Duration
clamp
SortDirection
PHP 8.6 Stream 错误处理:error_mode 三种模式、filter chain 上限与 TLS 会话复用
代码
PHP 8.6 Stream 错误处理:error_mode 三种模式、filter chain 上限与 TLS 会话复用
2026-09-27 21:02:49
PHP 8.6 给 Stream API 引入统一错误模型:error_mode 可选 warnings/exceptions/silence,stream_last_errors() 返回结构化 StreamError,StreamException 带 StreamErrorCode 枚举(50+ 语义码),并为 filter 链设上限、复用 TLS 会话握手。本文说明用法与 opt-in 性质。
PHP
8.6
Stream
错误处理
TLS
握手
PHP 8.6 的 Io\Poll:用 epoll/kqueue 替掉手写的 stream_select()
编程
PHP 8.6 的 Io\Poll:用 epoll/kqueue 替掉手写的 stream_select()
2026-09-27 21:02:49
PHP 8.6 新增 Io\Poll 命名空间,按平台统一用 epoll/kqueue/event ports/WSAPoll,取代用户态手写的 stream_select()。本文说明核心类型 Context/Event/StreamPollHandle、为什么替掉 stream_select()(FD_SETSIZE 上限、O(n) 扫描),以及它与引擎级 async scheduler(目标 8.7+)的关系。
PHP
8.6
Io\Poll
stream_select
epoll
Laravel 13:PHP 8.3 起跳,PreventRequestForgery 做 origin 校验,Cache::touch 一条 EXPIRE 续期
编程
Laravel 13:PHP 8.3 起跳,PreventRequestForgery 做 origin 校验,Cache::touch 一条 EXPIRE 续期
2026-09-26 21:03:32
Laravel 13 最低要求 PHP 8.3,CSRF 中间件更名为 PreventRequestForgery 并优先检查 Sec-Fetch-Site;Cache::touch 用一条 EXPIRE/TOUCH/UPDATE 续 TTL 而不取值。本文整理这两处升级注意点及 #[Middleware]/#[Authorize]、Queue::route、pgvector 语义搜索等改动。
PHP
Laravel
框架
缓存
安全
感知
Rig
PHP 8.6 升级:三个 session 默认值静默翻转,跨站 POST 会掉登录
编程
PHP 8.6 升级:三个 session 默认值静默翻转,跨站 POST 会掉登录
2026-09-26 21:01:43
PHP 8.6 最可能打断生产环境的不是移除的函数,而是 session.use_strict_mode、cookie_httponly、cookie_samesite 三个默认值翻转且不报错。本文列出三项改动、跨站 POST 掉登录的复现路径、trim/unpack/NUL 字节等静默行为变更与弃用清单,并给出上线前的排查顺序。
PHP
8.6
session
升级迁移
安全
PHP 8.6 升级自查笔记:三十项弃用里,哪些会改变现有代码的行为
代码
PHP 8.6 升级自查笔记:三十项弃用里,哪些会改变现有代码的行为
2026-09-25 21:06:20
PHP 8.6 计划 2026-11-19 发布,真正值得提前处理的是约三十项弃用。本文按「是否改变运行时行为」分类整理:从 finally 返回、构造函数返回值、把对象当数组传给 array_walk/http_build_query、is_a 字符串首参、is/let 保留字,以及 mb_ereg 系列从 Oniguruma 迁到 PCRE /u 的语义迁移注意点。
PHP
版本升级
弃用
兼容性
PHP 8.6 弃用 mb_ereg* 与 mb_split:Oniguruma 停维护后怎么排查、怎么迁到 PCRE /u
代码
PHP 8.6 弃用 mb_ereg* 与 mb_split:Oniguruma 停维护后怎么排查、怎么迁到 PCRE /u
2026-09-24 21:12:23
PHP 8.6 因 Oniguruma 上游停维护,弃用 mbstring 全部正则函数(mb_ereg*、mb_split),PHP 9.0 移除。给出 grep 排查法、迁移到 PCRE /u 的六个坑(UTF-8 语义、\p{}、替换串转义、非法 UTF-8、全局选项),以及 8.6 其他弃用项清单。
PHP
正则
mbstring
迁移
PHP C 扩展移植到 PHP 8.6:UPGRADING.INTERNALS 里的内部 API 移除与替换
代码
PHP C 扩展移植到 PHP 8.6:UPGRADING.INTERNALS 里的内部 API 移除与替换
2026-09-23 21:02:57
把 PHP C 扩展迁到 8.6,先读 php-src 根目录的 UPGRADING.INTERNALS。文中按移除项给出替换写法:ZVAL_IS_NULL→Z_ISNULL、29 个下划线前缀流函数去前缀、zend_parse_parameter 改用 zend_parse_arg_TYPE,以及 arg_info 类型、EG(in_autoload) 改名、闭包 API 收 zend_object* 等改签点。
PHP
扩展
C
版本
导出 50 万行订单直接 500:PHP CSV 流式导出的排查顺序与 Nginx/FPM 配置
编程
导出 50 万行订单直接 500:PHP CSV 流式导出的排查顺序与 Nginx/FPM 配置
2026-09-22 21:31:12
从「导出几十万行订单页面 500、日志报 memory exhausted」出发,按排查顺序定位一次性查询、数组映射、字符串拼接三份数据叠加的内存峰值,改成分页游标+生成器+fputcsv 流式写出;并补齐 ThinkPHP StreamResponse、Db::cursor 与 Nginx proxy_buffering/FPM request_terminate_timeout 这些容易被忽略的长连接配置。
PHP
CSV导出
内存优化
生成器
ThinkPHP
Nginx
用 Rector 把 PHP 5.3 项目升到 8.5:它基于 AST,不是查找替换
编程
用 Rector 把 PHP 5.3 项目升到 8.5:它基于 AST,不是查找替换
2026-09-22 21:31:12
Rector 用 AST 自动升级和重构 PHP 代码,覆盖 5.3 到 8.5。本文给出安装、rector.php 配置、单规则与 prepared sets 用法、--dry-run 预览、CI 退出码 2 的含义,并强调一次只上一个版本集、输出格式要接 ECS/PHP-CS-Fixer、CODE_QUALITY 与 EARLY_RETURN 规则竞争这些实战取舍。
PHP
Rector
代码重构
PHP升级
静态分析
CI
大家都在搜索什么?
devops
易支付
一个官网+多少钱
统一接受回调
统一回调
python
sub
node
宝塔日志
mysql
shell
ElasticSearch
css
vue
api接口对接
2025
支付接口对接
go
php
php回调
上一页
1
2
3
4
5
6
7
8
下一页
共 8 页
到第
页
确定