如何使用用于解析Web脚本的PHP解释器从命令行运行PHP脚本?
我有一个phpinfo.php
文件,可以从网页上查看安装了German
。但是,如果我使用 - phpinfo.php
和php phpinfo.php
使用grep
从命令行运行German
,我找不到它。所以两个phps都不同。我需要运行一个php
安装German
的脚本。
我该怎么做?
答案 0 :(得分:120)
在误解之后,我终于得到了你想要做的事情。 您应该检查您的服务器配置文件;你在使用apache2或其他服务器软件吗?
查找以LoadModule php
开头的行...
可能有名为mods
的配置文件/目录或类似的东西,从那里开始。
您还可以检查来自php -r 'phpinfo();' | grep php
的输出,并将来自网络服务器的行与phpinfo();
进行比较。
php
:(所以你可以在控制台中粘贴/编写代码)
php -a
php -f file.php
php -f file.php > results.html
要仅运行一小部分,一行等,您可以使用:
php -r '$x = "Hello World"; echo "$x\n";'
如果您正在运行Linux,请在控制台上执行man php
。
答案 1 :(得分:2)
在SuSE上,PHP有两种不同的配置文件:一种用于Apache,一种用于CLI(命令行界面)。在/ etc / php5 /目录中,您将找到“apache2”目录和“cli”目录。每个都有一个“php.ini”文件。这些文件用于相同的目的(php配置),但适用于运行PHP的两种不同方式。除其他外,这些文件加载PHP使用的模块。
如果您的操作系统类似,那么这两个文件可能不一样。您的Apache php.ini可能正在加载gearman模块,而cli php.ini则不是。安装模块(自动或手动)时,它可能只更新了Apache php.ini文件。
您只需将Apache php.ini文件复制到cli目录中,即可使CLI环境与Apache环境完全相同。
或者,您可以在Apache文件中找到加载gearman模块的行,并将其复制/粘贴到CLI文件中。
答案 2 :(得分:0)
我一直在寻找Windows中解决此问题的方法,似乎如果您没有vars好的环境,则需要放置完整的目录。例如。文件位于与PHP相同的目录中:
> F:\myfolder\php\php.exe -f F:\myfolder\php\script.php