在Travis中检测PHP版本

时间:2015-02-23 14:14:09

标签: travis-ci

在我的Travis文件中,我有几个PHP版本和一个这样的脚本条目:

php:
    - 5.6
    - 5.5
    - 5.4
    - 5.3

script:
    - export CFLAGS="-Wno-deprecated-declarations -Wdeclaration-after-statement -Werror"
    - phpize #and lots of other stuff here.
    - make

我只想在PHP版本匹配5.6时运行export CFLAGS行。

理论上我可以用一个讨厌的黑客从命令行中检测PHP版本,但我怎么能通过Travis配置脚本​​来做到这一点?

1 个答案:

答案 0 :(得分:9)

您可以使用shell条件来执行此操作:

php:
    - 5.6
    - 5.5
    - 5.4
    - 5.3

script:
    - if [[ ${TRAVIS_PHP_VERSION:0:3} == "5.6" ]]; then export CFLAGS="-Wno-deprecated-declarations -Wdeclaration-after-statement -Werror"; fi
    - phpize #and lots of other stuff here.
    - make

或者使用explicit inclusions构建矩阵:

matrix:
    include:
      - php: 5.6
        env: CFLAGS="-Wno-deprecated-declarations -Wdeclaration-after-statement -Werror"
      - php: 5.5
        env: CFLAGS=""
      - php: 5.4
        env: CFLAGS=""
      - php: 5.3
        env: CFLAGS=""

script:
    - phpize #and lots of other stuff here.
    - make

后者可能是你正在寻找的东西,前者有点不那么冗长。