PHP 是为开发 Web 应用而创建,不过它的命令行脚本接口(CLI)也非常有用。PHP 命令行编程可以帮你完成自动化的任务,如测试,部署和应用管理。
CLI PHP 编程非常强大,可以直接调用你自己的程序代码而无需创建 Web 图形界面,需要注意的是不要把 CLI PHP 脚本放在公开的 web 目录下!
在命令行下运行 PHP :
~~~
> php -i
~~~
选项 -i 将会打印 PHP 配置,类似于 [phpinfo()](http://php.net/function.phpinfo) 函数。
选项 -a 提供交互式 shell,和 Ruby 的 IRB 或 python 的交互式 shell 相似,此外还有很多其他有用的[命令行选项](http://php.net/features.commandline.options)。
接下来写一个简单的 “Hello, $name” CLI 程序,先创建名为 `hello.php `的脚本:
~~~
<?php
if($argc != 2) {
echo "Usage: php hello.php [name].\n";
exit(1);
}
$name = $argv[1];
echo "Hello, $name\n";
~~~
PHP 会在脚本运行时根据参数设置两个特殊的变量,[$argc](http://php.net/reserved.variables.argc) 是一个整数,表示参数个数,[$argv](http://php.net/reserved.variables.argv) 是一个数组变量,包含每个参数的值, 它的第一个元素一直是 PHP 脚本的名称,如本例中为 `hello.php`。
命令运行失败时,可以通过 `exit()` 表达式返回一个非 0 整数来通知 shell,常用的 exit 返回码可以查看[列表](http://www.gsp.com/cgi-bin/man.cgi?section=3&topic=sysexits)。
运行上面的脚本,在命令行输入:
~~~
> php hello.php
Usage: php hello.php [name]
> php hello.php world
Hello, world
~~~
* [学习如何在命令行运行 PHP](http://php.net/features.commandline)
* [学习如何在 Windows 环境下运行 PHP 命令行程序](http://php.net/install.windows.commandline)
- 欢迎
- 入门指南
- 使用当前稳定版本
- 内置的WEB服务器
- Mac安装
- Windows安装
- 代码风格指南
- 语言亮点
- 编程范式
- 命名空间
- PHP标准库
- 命令行接口
- Xdebug
- 依赖管理
- Composer 与 Packagist
- PEAR
- 开发实践
- 基础知识
- 日期和时间
- 设计模式
- 使用UTF8编码
- 依赖注入
- 基本概念
- 复杂的问题
- 容器
- 延伸阅读
- 数据库
- MYSQL 扩展
- PDO 扩展
- 数据库交互
- 数据库抽象层
- 使用模板
- 好处
- 原生PHP模板
- 编译模板
- 延伸阅读
- 错误与异常
- 错误
- 异常
- 安全
- Web应用程序安全
- 密码哈希
- 数据过滤
- 配置文件
- 注册全局变量
- 错误报告
- 测试
- 测试驱动开发
- 行为驱动开发
- 其他测试工具
- 服务器与部署
- Platform as a Service (PaaS)
- 虚拟或专用服务器
- 共享服务器
- 构建及部署应用
- 虚拟化
- Vagrant
- Docker
- 缓存
- Opcode缓存
- 对象缓存
- 文档撰写
- 资源
- 社区
- Credits