众所周知,PHP是一门脚本语言,主要用于服务端(JavaScript 用于客户端)以通过HTTP 生成动态网页。
所以与其他脚本语言一样,可以直接在终端中不需要网页浏览器来运行PHP 代码。
获取安装信息
在安装完PHP 以及Nginx 之后,接下来我们通常需要做的是,在/usr/local/var/www
(Mac 上的Nginx 工作目录)上创建一个内容为<?php phpinfo(); ?>
,名为index.php的文件来测试PHP 是否安装正确。
执行以下命令即可:
1 | # echo '<?php phpinfo(); ?>' > /usr/local/var/www/index.php |
然后,使用浏览器访问http://127.0.0.1/index.php
,不出意外可以看到:
如何在终端中直接查看该信息?
1 | # php -f /usr/local/var/www/index.php | less |
如果你觉得上面这种方式太麻烦了,那么还有一种更简便的方式可以达到同样的效果。
1 | # php -r 'php phpinfo();' | less |
交互模式
有时候我们会遇到这样一种情况,想测试一小段代码,看看其运行结果,但是又不想重新创建一个文件,太麻烦了。
如果这个时候有一个地方可以直接运行这段代码且输出结果,那该多好啊。
PHP 为我们提供了两种交互模式,前者是自动的,后者是手动的。
- Interactive shell
- Interactive mode enabled
两种模式都是使用 php -a
命令进入。
Interactive shell
使用这个交互式shell,你可以直接在命令行窗口里输入PHP并直接获得输出结果。
1 | $ php -a |
回车即可查看输出内容。
Interactive mode enabled
1 | $ php -a |
如果出现的是这个模式,说明你的PHP并不支持交互式shell,
不过不用担心,这个模式同样也可以执行PHP 代码,只是代码的执行方式有些区别。
输入了所有PHP代码后,输入Ctrl-Z
(windows里),或输入Ctrl-D
(linux里),你输入的所有代码将会一次执行完成并输出结果。
输入exit
或者⌃ + c
退出交互模式。
PHP 脚本
在终端中可以把PHP 脚本作为Shell 脚本来运行。
首先你需要创建一个PHP 脚本文件:
1 | # echo -e '#!/usr/bin/php\n<?php phpinfo();?>' > phpscript.php |
-e
表示激活转义字符。
注意,这个脚本文件中的第一行#!/usr/bin/php
,就像是Shell 脚本中的#!/bin/bash
。目的是告诉Linux 命令行使用PHP 解析器来解析该文件。
运行该脚本:
1 | # chmod +x phpscript.php // 使脚本具有执行权限 |
PHP 服务
PHP 有内置一个WebServer,可以很方便快速的搭建一个PHP 服务。
1 | $ php -t /project to path -S localhost:port |
然后通过浏览器访问localhost:port
就可以了。
总结
php -a
:进入交互模式php -f
:解析和执行文件php -h
:获取帮助php -i
:查看PHP 信息和配置php -m
:显示已经安装的模块php -r
:运行PHP代码不使用脚本标签’..?>‘php -v
:查看PHP 版本php -ini
:查看加载配置文件(php.ini、conf.d)php -i | grep configure
:查看静态编译模块php --ri swoole
:查看指定模块的配置locate php.ini
:查询本地配置文件time php script.php
:查看程序的执行时间