如何为命令行强制使用PHP版本?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何为命令行强制使用PHP版本?相关的知识,希望对你有一定的参考价值。
我与1and1.com一起托管,我已经设置了我的文件,使用.htaccess
解析php5。
但这只适用于apache,而不是命令行,默认为服务器默认php4。
所以目前我无法设置cron作业来运行我的代码作为php5。有任何想法吗?
如果两者都已安装,您需要做的就是使用相关的PHP二进制文件运行脚本。
例如:
// Runs using the PHP binary located at /usr/bin/php
* * * * * root /usr/bin/php -n "/path/to/script.php"
要么
// Runs using the PHP binary located at /var/php5
* * * * * root /var/php5 -n "/path/to/script.php"
您需要知道的是PHP CLI二进制文件的完整文件系统路径,并调用相关的文件系统路径来运行您的代码。
根据qazxsw poi,在根项目中创建.profile并添加以下行:
https://community.1and1.com/using-php-composer-at-1and1/
这个对我有用。注销并以SSH身份重新登录并执行:
alias php='/usr/bin/php5.5-cli'
结果:
PHP 5.5.32(cli)(建于2016年2月15日16:13:44)
如果你可以直接在shell中执行PHP脚本,如:
php -v
你可以指定将在它的第一行执行脚本的二进制文件:
$ script.php
那条线叫做#!/usr/bin/php
<?php
。您的系统上的行可能不同,您需要知道要用于该脚本的PHP CLI二进制文件的完整文件系统路径。
如果在shell中执行该文件,则将使用指定的二进制文件。对于cron也一样。
如果您通过Web服务器执行该文件,PHP将以静默方式删除该行。
另见:shebang
必须有两个PHP目录,其中一个应该是默认目录。尝试从服务器的根目录找出php5的路径,并在你的cron作业中使用完整路径。
这是在1and1上从命令行强制PHP的另一种方法。
在你的服务器上使用ssh登录并在那里创建一个名为Features: Using PHP from the command line的新文件,你将编写以下行.profile
使用ssh重新登录并使用alias php='/usr/local/bin/php5'
检查php版本你应该看到版本现在是5。
我终于搞定了这个。问题是几个问题。
首先,使用的PHP是在/ etc / bin而不是MAMP版本。我能够改变它并使用MAMP版本。
其次,要通过CLI使用php,你必须确保使用PHP的完整路径而不仅仅是php本身。即在exec()调用中使用/MAMP/bin/php/php5.3.x/php。现在这对我有用。
你可以在这里查看我的GIST ... https://gist.github.com/1861487
以上是关于如何为命令行强制使用PHP版本?的主要内容,如果未能解决你的问题,请参考以下文章
如何为 youtube 添加 wmode="opaque" 或 wmode="transparent" 到这个 php 片段? [复制]