从命令行运行PHP脚本

我怎样才能使用php解释器来parsing网页脚本,从命令行运行一个php脚本。

更多详情 –

我有一个phpinfo.php文件,如果从网上访问显示, gearman安装。 但是,如果我使用php phpinfo.phpgrep for gearman从命令行运行phpinfo.php ,我不会find它。 所以两个phps是不同的。 我需要运行一个脚本,其中安装了哪个gearman

我怎样才能做到这一点?

更新:

误解之后,我终于得到了你正在做的事情。 你应该检查你的服务器configuration文件; 你使用apache2或其他服务器软件?

查找以LoadModule php开头的行…可能有configuration文件/目录名为mods或类似的东西,从那里开始。

你也可以检查php -r 'phpinfo();' | grep php php -r 'phpinfo();' | grep php php -r 'phpinfo();' | grep php和比较线phpinfo(); 从networking服务器。

以交互方式运行php

(所以你可以在控制台上粘贴/写入代码)

 php -a 

为了使它parsing文件并输出到控制台:

 php -f file.php 

parsing文件并输出到另一个文件:

 php -f file.php > reults.html 

你还需要别的吗?

要运行只有一小部分,一行或类似,您可以使用:

 php -r '$x = "Hello World"; echo "$x\n";' 

如果你正在运行linux,那么在控制台上执行man php

(我知道这是一个老问题)

在SuSE上,PHP有两个不同的configuration文件:一个用于Apache,一个用于CLI(命令行界面)。 在/ etc / php5 /目录下,你会发现一个“apache2”目录和一个“cli”目录。 每个都有一个“php.ini”文件。 这些文件是为了相同的目的(PHPconfiguration),但适用于运行PHP的两种不同的方式。 这些文件加载​​了PHP使用的模块。

如果你的操作系统类似,那么这两个文件可能不一样。 你的Apache的php.ini可能是加载的gearman模块,而cli php.ini不是。 当模块安装(自动或手动),它可能只是更新Apache的php.ini文件。

您可以简单地将Apache php.ini文件复制到cli目录中,使CLI环境与Apache环境完全相同。

或者,您可以在Apache文件中find加载gearman模块的行,并将其复制/粘贴到CLI文件中。