【问题标题】:PHP CLI - which command should I use?PHP CLI - 我应该使用哪个命令?
【发布时间】:2011-02-25 23:10:05
【问题描述】:

我有一台服务器(测试),它具有可以运行 CLI 的“php”命令。另一台服务器(主机)仅使用“php5-cli”命令运行。

例子:

exec("php file.php"); // Works on test server
exec("php5-cli file.php"); // Works on hosting server

我的脚本如何检测使用哪一个?

【问题讨论】:

    标签: php command-line-interface


    【解决方案1】:

    为每个服务器创建一个特定的配置值。在某些服务器上,您会遇到 php5 作为 cli 命令,而不是 php:) 系统管理员可以轻松地将可执行文件重命名或符号链接到他喜欢的任何名称。


    编辑: 尝试以下方式:

    $output = Array();
    $result = -1;
    exec("php -f myScript.php", $output, $result);
    if($result==-1){
        // you should try to exec use the other method here
        echo "app 'php' not found";
    }else{
        // the exec was a success
    }
    

    【讨论】:

      【解决方案2】:
      php-config --php-binary
      php-config5 --php-binary
      

      但是您可能会遇到类似的问题,即无法保证该命令的名称(或它是否存在)。不确定有多少托管公司使用它。

      【讨论】:

        【解决方案3】:

        确保在使用它们时包含哪个 php.ini。

        【讨论】:

          【解决方案4】:

          您可以将php-cli 符号链接为php 还是反之亦然?

          这两种方法都行。

          【讨论】:

          • 他明确指出php 在他的主机服务器上不起作用,因此他提出了问题。
          【解决方案5】:

          为什么不在其中一台服务器ln -s 上建立可执行文件的符号链接,以便其中一台在两台服务器上都可用。

          应该可以解决这个问题。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2019-12-03
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2011-03-13
            • 2015-12-31
            • 2019-12-06
            相关资源
            最近更新 更多