从命令行运行 PHP 脚本
如何使用用于解析 Web 脚本的 PHP 解释器从命令行运行 PHP 脚本?
我有一个从网络节目访问的文件已安装。但是,如果我使用 - 和 for 从命令行运行 ,我找不到它。所以两个PHP文件是不同的。我需要运行一个安装在其上的脚本。phpinfo.php
German
phpinfo.php
php phpinfo.php
grep
German
php
German
我该怎么做?
如何使用用于解析 Web 脚本的 PHP 解释器从命令行运行 PHP 脚本?
我有一个从网络节目访问的文件已安装。但是,如果我使用 - 和 for 从命令行运行 ,我找不到它。所以两个PHP文件是不同的。我需要运行一个安装在其上的脚本。phpinfo.php
German
phpinfo.php
php phpinfo.php
grep
German
php
German
我该怎么做?
您应该检查服务器配置文件。查找以 ...可能有配置文件/目录命名或类似的东西。从那里开始。LoadModule php
mods
您还可以检查 Web 服务器的输出,并将行与 Web 服务器的行进行比较。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
如果你需要/想要通过 fpm(FastCGI Process Manager)运行 PHP,请使用 cli fcgi:
SCRIPT_NAME="file.php" SCRIP_FILENAME="file.php" REQUEST_METHOD="GET" cgi-fcgi -bind -connect "/var/run/php-fpm/php-fpm.sock"
其中 /var/run/php-fpm/php-fpm.sock 是你的 php-fpm 套接字文件。
在SUSE Linux上,PHP有两个不同的配置文件:一个用于Apache,另一个用于CLI(命令行界面)。在 /etc/php5/ 目录中,您将找到一个 “apache2” 目录和一个 “cli” 目录。每个都有一个“php.ini”文件。这些文件用于相同的目的(PHP配置),但适用于运行PHP的两种不同方式。除其他事项外,这些文件还加载PHP使用的模块。
如果您的操作系统相似,那么这两个文件可能不相同。您的Apache php.ini可能正在加载德语模块,而CLI php.ini则没有。当模块安装(自动或手动)时,它可能只更新了Apache php.ini文件。
您可以简单地将Apache php.ini文件复制到目录中,以使CLI环境与Apache环境完全相同。cli
或者,您可以在Apache文件中找到加载德语模块的行,然后将其复制/粘贴到CLI文件中。