You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何简化GitHub Actions ci.yml中的PHP版本判断条件?

简化GitHub Actions中PHP版本判断的if条件

你可以通过以下两种更简洁的方式实现原有的条件判断:

方法1:使用contains结合JSON数组

GitHub Actions的表达式中直接定义数组需要通过fromJSON解析字符串,这样就能用contains检查当前PHP版本是否在排除列表内,再取反即可:

- name: Make Tests Compatible With PHPUnit 9+
  if: "!contains(fromJSON('[\"5.3\", \"5.4\", \"5.5\", \"5.6\", \"7.0\", \"7.1\", \"7.2\"]'), matrix.php-version)"
  run: php tests/make_compatible_with_phpunit9.php

方法2:使用semver函数做版本区间判断

因为你要排除的都是低于7.3的PHP版本,直接用GitHub Actions内置的semver函数做版本比较更直观,它能正确处理语义化版本的大小判断:

- name: Make Tests Compatible With PHPUnit 9+
  if: "semver(matrix.php-version, '>=7.3')"
  run: php tests/make_compatible_with_phpunit9.php

这两种方法里,方法2更简洁且易维护——后续如果有新的低版本需要排除,不需要修改列表,只要保持版本区间判断即可。

内容的提问来源于stack exchange,提问作者neubert

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 11:55:27