惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

H
Heimdal Security Blog
C
Check Point Blog
Jina AI
Jina AI
T
Tailwind CSS Blog
IT之家
IT之家
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
人人都是产品经理
人人都是产品经理
S
SegmentFault 最新的问题
U
Unit 42
Cyberwarzone
Cyberwarzone
T
The Blog of Author Tim Ferriss
I
Intezer
V
Visual Studio Blog
月光博客
月光博客
A
Arctic Wolf
L
LINUX DO - 热门话题
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
T
Threatpost
F
Fortinet All Blogs
Simon Willison's Weblog
Simon Willison's Weblog
酷 壳 – CoolShell
酷 壳 – CoolShell
K
Kaspersky official blog
L
Lohrmann on Cybersecurity
T
Tenable Blog
爱范儿
爱范儿
大猫的无限游戏
大猫的无限游戏
博客园_首页
Recent Announcements
Recent Announcements
Exploit-DB.com RSS Feed
Exploit-DB.com RSS Feed
C
Cybersecurity and Infrastructure Security Agency CISA
P
Privacy International News Feed
The Register - Security
The Register - Security
cs.CV updates on arXiv.org
cs.CV updates on arXiv.org
J
Java Code Geeks
I
InfoQ
Application and Cybersecurity Blog
Application and Cybersecurity Blog
Webroot Blog
Webroot Blog
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
The Last Watchdog
The Last Watchdog
AWS News Blog
AWS News Blog
Last Week in AI
Last Week in AI
Spread Privacy
Spread Privacy
云风的 BLOG
云风的 BLOG
D
Darknet – Hacking Tools, Hacker News & Cyber Security
Apple Machine Learning Research
Apple Machine Learning Research
F
Full Disclosure
Vercel News
Vercel News
The Hacker News
The Hacker News

码云笔记

Pinia v4 发布:Vue 状态管理进入新时代 Linux LVM:故障排查与数据恢复指南 Java中wait()与sleep()方法的不同点是什么? Bonsai27B 重磅落地!27B 大模型实现手机本地运行 ES2026 第 17 版新增的 5 个新特性 高德重磅上线 ABot‑World Studio,消费级显卡就能搭建专属 3D 虚拟世界 Java中final、finally和finalize的区别是什么? 怎么修改Ollama及其模型的默认路径?Ollama路径修改、迁移与重启的操作教程 iOS27 公开测试版正式上线!AI Siri 与液态玻璃成最大看点 Yuku正式发布!比 Vite+ 快 5.4 倍的前端工具链 Linux lsof 命令详解:进程与文件监控实战 Claude Code CLI命令手册 代码审查重构Bug修复场景化工作流 OpenClaw中连接并使用本地Ollama模型的操作教程 GPT-5.6 今天正式上线:OpenAI 掏出”太阳系”全家桶,Sol / Terra / Luna 齐发,打的却是一张”效率牌” Nacos MySQL持久化部署完整教程 GPT-5.6系列正式上线:OpenAI以效能与性价比重塑AI行业竞争格局 Java中序列化与反序列化的概念是什么? 如何在HTML中实现字体颜色根据背景自动变化? JDK动态代理与CGLIB动态代理的区别是什么? OpenClaw数据加密敏感信息保护的完整教程 砸超亿美元算力!亚马逊秘密启动Moonraker项目,Alexa迎来颠覆性升级 PHP 最轻量、结构化 .docx 到 Markdown 转换器 Elephant TypeScript 7.0 正式发布 蚂蚁灵波开源全球首款 MoE 具身视频大模型 LingBot-Video,为机器人世界模型搭建新底座 SpaceX AI联合Cursor推出Grok 4.5 搅动专业AI赛道格局 英伟达Vera CPU落地商用,改写AI代理时代算力竞争规则 什么是端点检测与响应(EDR)以及它的工作原理介绍 Anime.js 已经 10 岁了!作者查出脑瘤,V5 将开始收费! 星链开启全面升级!SpaceX申请十万颗卫星,构建AI时代全球天基基建 WordPress 7.0 下载,支持AI建站 Docker Desktop(windows)版本下载 详解 Linux 端口监听检查工具:ss、netstat、lsof 京东 JoyAI 上线 UGC 数字人功能,普通人一键打造专属虚拟分身 Java中Integer缓存池的作用是什么? 应对劳动力短缺 日本加码布局AI机器人产业,2040年拟千万台机器人落地各行各业 Java中深拷贝与浅拷贝的区别是什么? Claude旗舰模型收费规则大变:订阅权益取消,转为按量计费 MySQL中的分布式架构和复制策略 如何在 MySQL 中处理 BLOB 和 CLOB 数据类型? 如何在 MySQL 中处理和优化长时间运行的查询? git提交信息分别用什么icon好? Composer安装与配置教程 35岁华为员工偷偷面试,被面试官嘲讽:你是被淘汰的吧?他的回怼让面试官当场闭嘴 谷歌Nano Banana 2 Lite正式上线:4秒极速出图,大幅降低AI生图成本 锐捷交换机运维配置完全参考手册 Vue 3.5:Effect Scope 与响应式污染隔离机制 IS-IS协议基本概念、工作原理与扩展应用 美团LongCat-2.0重磅开源!国产万亿参数大模型解锁超长上下文新能力 LangChain4j 和 LangGraph4j 区别是什么?哪个更好? Claude Code 的聊天和配置可以一键搬进 Codex 了 码云笔记详解Markdown格式兼容性、图片显示失效与同步冲突解决 python实现自动爬取某论坛帖子并导出到Word文档的实战教程 高德低调内测 AI 零代码工具“袋马”,切入小微商家轻量化应用开发赛道 一文看懂OSPF:基础概念、工作原理和应用场景 PHP (Yii2) 接入企业级 SSO 单点登录实战教程 Google终于支持修改Gmail邮箱了?实测告诉你哪些能改,哪些不能改!(附详细教程+FAQ) UCloud 4.6 元 / 月服务器是真的吗? 2026 云服务器完整选购攻略 Webiny:无服务器应用程序框架 Fyrox:现代化的 Rust 游戏引擎 千问发布全球首个原生语言世界模型Qwen-AgentWorld,AI智能体迈入全环境实操新时代 火山引擎上新豆包音频生成模型1.0,AI音频生成实现一键全流程创作 使用Claude Code经常遇到的10个问题 如何批量清理wordpress所有文章和标签,保留设置,保留分类? 谷歌 NotebookLM 内测文献综述矩阵工具,Gemini3.5 赋能 AI 学术结构化研究 京东开源JoyAI-VL-Interaction模型 解锁AI实时视频视觉交互新形态 破解中小商家海报设计难题!MeiGen-AI开源闭环AI设计方案落地 详解Bash set 命令:set -e、set -x 和 set -u 完全指南 Node Plus ?比 pnpm 快 24 倍! Plan-Execute-Replan 和 ReAct 的区别是什么? Anthropic最新报告揭秘:AI编程人机协作成开发者主流工作模式 详解PostgreSQL 18 逻辑复制冲突检测与解决方法 JDK动态代理与CGLIB动态代理的区别是什么? 详解 Linux 中 localhost、127.0.0.1 与 Loopback(回环地址) OpenAI Codex新手入门教程 安装配置AGENTS.md与MCP全流程详解 程序员必备AGENTS.md配置指南 规避AI编码修改乱象 使用 Codex 必装的 12 个插件,你值得拥有! macOS AI CLI工具安装与避坑指南 OpenClaw Gemini Claude报错全套解决方案 智谱AI正式开源GLM-5. 2 模型:主打1M无损上下文与长程代码任务 小米 MiMo Claw 正式版上线 轻量化 Agent 打通金山办公生态 如何定义 Vue 的动态路由?如何获取传过来的动态参数? 记录Claude Code Router 接入过程遇到问题及解决方法 千问AI眼镜凭硬核实力领跑2026智能穿戴赛道 程序员特有的习惯你占了几条! 郝景芳新作半数内容由AI创作,文坛郝景芳AI写作争议再起 使用 iftop、nload、bmon、vnstat 监控 Linux 网络带宽 现代富文本编辑器为什么最终都会抛弃 DOM? Vue 的 v-cloak 和 v-pre 指令有什么作用? 去哪里买抖音号?抖音小号在线购买-抖音小号出售批发 实名闲鱼小号出售|闲鱼账号批发|咸鱼发布账号|出售闲鱼发布账号 zfb号购买-支付宝小号购买-实名支付宝购买号-企业支付宝购买-支付宝小号批发 个人支付宝实名账号出售|v2/v3支付宝账号出售|实名支付宝小号购买 闲鱼账号哪里有卖-闲鱼实名账号购买的途径 Java注解的实现原理是什么? Agentation MemPalace 《置身钉内》之好词好句好段摘抄 AI有声书革命!万象有声全自动生产线,7元/万字颠覆网文有声化行业 详解CentOS 7跨版本迁移Rocky Linux9 生产环境安全升级教程 Java中序列化与反序列化的含义是什么? 18. Python 标准库之 Json 模块
PHP 通用表达式语言 CEL-PHP 2.0.0 正式发布!
春笋 普通 · 2026-07-08 · via 码云笔记

AI 概述

CEL是安全轻量嵌入式表达式语言,CEL-PHP 2.0对齐CEL规范与cel-go,新增可选值、列表推导、时间运算、matches正则等语法特性,完善Protobuf类型与名称解析。修复整数溢出、时间戳、类型转换等语义问题,优化decimal扩展;同时重构依赖、规范API、提升测试覆盖率,配套升级文档说明版本破坏性变更,适配API鉴权、数据校验等场景。

目录

文章目录隐藏

  1. 新特性(Features)
  2. 错误修复(Bug Fixes)
  3. 文档(Documentation)
  4. 内部改进(Internal)

PHP 通用表达式语言 CEL-PHP 2.0.0 正式发布!

CEL-PHP 2.0 是一个重大版本更新,与 CEL 规范和 cel-go 实现对齐。亮点包括:数值比较与空值相等(proposal 210)、可选值(proposal 246)、双变量推导(comprehensions)、时间戳/时长算术、matches()、Protobuf 知名类型以及限定名称解析(qualified-name resolution),此外还有溢出检查的整数数学和修正的时间戳、转换、映射键语义。

CEL(Common Expression Language)是一种简单、安全的表达式语言,可在对性能要求较高的应用中快速、可移植且安全地执行。CEL 旨在嵌入应用中,具有特定于应用的扩展,并且非常适合扩展应用可能已经在使用的声明式配置。类似于 JavaScript 的子集,但更注重可移植性和性能。它不支持循环或递归,避免了无限计算的风险,非常适合嵌入式场景,如 API 授权、数据验证或配置驱动的逻辑。

新特性(Features)

语言层(Language)

  • 数值比较与空值相等:CEL proposal 210,支持总序和跨类型 == / != / ordering。 (#113)
  • 可选值:实现 CEL proposal 246(optional.of / none / ofNonZeroValue、orValue、可选字段选择、has())。 (#105)
  • 双变量推导:all / exists / existsOne(i, v, p)、transformList / transformMap,支持错误吸收。 (#47990f9)
  • 限定名称解析:最长前缀名称解析和前导点引用(.foo)。 (#bb3ea8b)
  • 列表索引:通过 uint 或整型 double 索引列表;has() 会穿透可选值。 (#dd34c62)

类型层(Types)

  • dyn 和类型值:一等类型值、dyn() 身份转换、规范对齐的转换。 (#021f97f)
  • 标签化映射键:支持 distinct bool/int/uint/string 键,无碰撞,uint 支持超过 PHP_INT_MAX。 (#d041fd8)
  • 知名类型:构造 google.protobuf 标量包装器和 Value。 (#5d9ec16)

标准库(Standard Library)

  • matches():正则表达式字符串函数,支持 Unicode 部分匹配(unanchored)。 (#98a9c6b)
  • 时间戳/时长算术:六种 + / – 重载,并进行范围检查。 (#ef087df)

扩展(Extensions)

  • ext-decimal 2.0:Decimal 扩展已与 ext-decimal 2.0 兼容。 (#9a34cf6)

错误修复(Bug Fixes)

数字(Numbers)

  • int64 溢出:整数 +、-、* 和取负现在在溢出时抛出异常,而不是包装。 (#018d4c5)
  • 转换溢出:int(double)、unsigned +/* 以及时间戳/时长拒绝超出范围的值。 (#00130ad)
  • 大 uint 字面量:保留超出带符号 64 位范围的 uint 字面量。 (#7177b37)

类型(Types)

  • 无符号整数类型:将无符号值类型化为 int|numeric-string。 (#442967f)
  • 时间戳/时长类型名称:type() 报告 google.protobuf.Timestamp 和 Duration。 (#a7c728b)

解析器(Parser)

  • 基数前缀字面量:解析 0x、0o 和 0b 整数字面量时使用真实基数(以前是 0)。 (#2f1c904)
  • RFC3339 解析:在 proleptic Gregorian 日历上解析时间戳。 (#2469ff3)

日期与时间(Date & Time)

  • 时间戳访问器:修正 CEL 语义的 day、date、millisecond 和时区访问器。 (#a2a4445)
  • string(timestamp) :以 RFC 3339 格式输出,仅包含有效小数位。 (#c152f1d)

文档(Documentation)

  • 升级指南:新增 UPGRADE-2.0.md,覆盖自 1.2.1 以来的每项破坏性变更和行为变更。 (#baf3840)

内部改进(Internal)

  • 依赖项:删除捆绑的 Psl 组件,将 php-standard-library 拆分为独立包,并使用 ext-mbstring。 (#0885373、其他)
  • API 表面:为每个符号标注 @api 或 @internal,只抛出项目异常。 (#13f9265、其他)
  • 质量:使用 Mago 和 Infection 达到 100% 变异分数,并收紧分析器配置。 (#b038374、其他)
  • 打包:加强打包、CI 和发布工具。 (#e40ef2c)

以上关于PHP 通用表达式语言 CEL-PHP 2.0.0 正式发布!的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。

「点点赞赏,手留余香」

26

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » PHP 通用表达式语言 CEL-PHP 2.0.0 正式发布!