配置PHP环境变量

这里以ubuntu下zsh的环境变量配置举例。
笔者在ubuntu下直接安装了xampp,所以就不再单独安装php了。找到php的位置。如下:
php位置
得到php的路径为/opt/lampp/bin,直接该路径添加到PATH中。我这里用的是zsh,需要编辑~/.zshrc.如果是bash,则编辑~/.bashrc如下图所示:
配置环境变量
编辑完后,执行source ~/.zshrc.
执行php -v.如果出现如下信息,则表示php环境变量配置成功.
php环境变量测试
对于windows下面,与ubuntu下的方法类似,只需要读者找到php.exe的位置,然后在系统的环境变量中将对应的路径配置到PATH最后即可。具体不再详述。
windows下php的位置
windows环境变量配置

详解PHP命令行参数

这部分内容不少都是引用了php的官方文档,如果觉得我这里说的有问题的地方可以直接参考php官方文档

php cli的由来

从版本 php 4.3.0 开始,PHP 提供了一种新类型的 CLI SAPI(Server Application Programming Interface)支持,该CLI SAPI模块主要用作 PHP 脚本程序的开发。除了CLI之外还有CGI也属于SAPI,尽管CLI和CGI之间有很多共同的行为,但是CLI和CGI是不同的 SAPI。
CLI和CGI的区别在于:

  1. CLI的输出没有任何(HTTP)头信息。CLI 默认以静默模式运行的,但为了保证兼容性,-q--no-header 参数为了向后兼容仍然保留,使得可以使用旧的 CGI 脚本。CLI在运行时,不会把工作目录改为脚本的当前目录(可以使用 -C--no-chdir 参数来兼容 CGI 模式)。CLI出错时输出纯文本的错误信息(非 HTML 格式)。
  2. CLI SAPI 强制覆盖了 php.ini 中的某些设置,因为这些设置在脚本环境下是没有意义的,如下:
设置选项 CLI SAPI 默认值 备注
html_errors FALSE 无意义的 HTML 标记符会使得出错信息很凌乱,所以在脚本程序下阅读报错信息是十分困难的。因此将该选项的默认值改为 FALSE。
implicit_flush TRUE 在CLI模式下,所有来自 print 和 echo 的输出将被立即写到输出端,而不作任何地缓冲操作。如果希望延缓或控制标准输出,仍然可以使用 output buffering 设置项。
max_execution_time 0(无限值) 鉴于在脚本环境下使用 PHP 的无穷的可能性,最大运行时间被设置为了无限值。为 web 开发的应用程序可能只需运行几秒钟时间,而脚本应用程序的运行时间可能会长的多。
register_argc_argv TRUE 由于该设置为 TRUE,将总是可以在 CLI SAPI 中访问到 argc(传送给应用程序参数的个数)和 argv(包含有实际参数的数组)。除了通过argc、argv之外也可以通过$_SERVER[‘argc’]、$_SERVER[‘argv’]来访问argc和argv