PHP命令行模式的参数详解

PHP 的命令行模式能使得 PHP 脚本能完全独立于 web 服务器单独运行。在linux下我们通常可以使用PHP的命令行模式来调试一些东西,和crontab

定时执行一些PHP文件。

通常PHP可执行的命令在PHP安装目录的bin文件夹下面,名称一般是php,或者php-cli。当然这跟你安装的方式及安装时配置的参数有关。

由于有两种SAPI(Server Application Programming Interface,服务端应用编程端口):CLICGI,尽管它们之间有很多共同的行为,

但是他们还是有很多的不同,具体可以查看PHP的文档http://www.php.net/manual/zh/features.commandline.php。我们今天讲的便是CLI SAPI。

要确定你们使用的PHP命令是CLI还是CGI,可以使用命令/php_install_dir/bin/php -v查看,如下图:

可以看到该命令是CLI的。

下面让我们来看看具体的使用方法:

使用 /php_install_dir/bin/php -h可以查看该命令的相关参数

-a : 交互式运行 PHP。

-c : 指定php.ini的位置,当然配置文件的名称不一定是php.ini,你也可以取名为php-test.ini。

通常这样使用:
$ php -c /custom/directory/php-test.ini test.php
意思是说,使用配置文件php-test.ini来运行test.php。

-n :不使用任何php.ini文件直接运行。
-d :自定义php.ini文件中相关的配置选项的值:
$ php -d max_execution_time  ,设置max_execution_time为1
$ php -d max_execution_time=  ,设置max_execution_time为“”
$ php -d max_execution_time=20,设置max_execution_time为20

-e :激活扩展信息模式,被用于调试/测试。

-f :指定要解析的PHP文件,默认可以省略。

-h :显示帮助。

-i : 相当于调用了phpinfo(),显示PHP相关的配置和模块。

-l :不检查致命错误,仅仅是简单的语法检查。

-m :打印出php内置的和已加载的zend模块
$ php -m

-r : 在命令行内运行单行 PHP 代码
$ php -r ‘ var $a=array(1,”123″,”abc”);var_dump($a)';

-B :在处理 stdin 之前先执行 PHP 代码。PHP 5 新加。
-R :对每个输入行都执行 PHP 代码。
-F :对每个输入行都执行 PHP 文件。
-E :在处理完输入后执行的 PHP 代码。
-s :使用内建机制来解析文件并为其生成一个 HTML 高亮版本并将结果写到标准输出。

-v :打印PHP SAPI和Zend 的版本信息。

-w :打印去除了注释和多余空白的源代码。

-z :加载 Zend 扩展库。如果仅给定一个文件名,PHP 将试图从当前系统扩展库的默认路径(在 Linux 系统下,该路径通常由 /etc/ld.so.conf 指定)加载该扩展库。如果用一个绝对路径指定文件名,则不会使用系统的扩展库默认路径。如果用相对路径指定的文件名,则 PHP 仅试图在当前目录的相对目录加载扩展库。

–ini :打印配置文件的路径和名称。
$ php –ini

–rf :打印关于指定某个函数的相关信息。
$ php –rf substr

–rc :打印关于指定某个类的相关信息。

–re :打印关于指定某个php模块的相关信息。

–ri :打印关于指定某个php模块的配置信息。

打赏此文

如果您觉得本站的内容对您有所帮助,您可以扫描下面的二维码小额支付请我喝杯茶,感谢!打赏记录
支付宝
微信
承诺:凡打赏捐助的朋友,留言备注自己的邮箱,在打赏捐助时间点的6个月内,本站会每周邮件推送原创专业技术博文,供大家学习和参考!

留下评论

All fields marked (*) are required