Rumah >pembangunan bahagian belakang >tutorial php >PHP的命令行脚本开发_PHP教程
PHP官方文档不要脸的说PHP能做任何事
,这和业界广为流传气死其他程序员不偿命的PHP是最好的语言
可真是遥呼相应。
PHP主要用于以下三个领域
(1) 服务端脚本
这是最主要的领域,PHP 解析器(CGI 或者服务器模块)和web服务器(如Apache、Nginx)搭配使用。
(2) 命令行脚本
这种方式,仅仅只需要 PHP 解析器来执行。联想一下Python
就会明白。
(3) 桌面应用程序
通过一些扩展库如PHP-GTK
可以使用PHP编写桌面应用程序。不过这得多无聊才会去干这事。
以下操作是在Mac下进行
进入php
目录,或将php
目录放到环境变量中。(Mac忽略这一步)
查看PHP引擎
<code>php -v # 输出 PHP 5.5.27 (cli) (built: Jul 23 2015 00:21:59) Copyright (c) 1997-2015 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2015 Zend Technologies </code>
查看使用帮助
<code>php -h # 输出 Usage: php [options] [-f] <file> [--] [args...] php [options] -r <code> [--] [args...] php [options] [-B <begin_code>] -R <code> [-E <end_code>] [--] [args...] php [options] [-B <begin_code>] -F <file> [-E <end_code>] [--] [args...] php [options] -S :<port> [-t docroot] php [options] -- [args...] php [options] -a -a Run as interactive shell -c <path>|<file> Look for php.ini file in this directory -n No php.ini file will be used -d foo[=bar] Define INI entry foo with value 'bar' -e Generate extended information for debugger/profiler -f <file> Parse and execute <file>. -h This help -i PHP information -l Syntax check only (lint) -m Show compiled in modules -r <code> Run PHP <code> without using script tags <!--?..?--> -B <begin_code> Run PHP <begin_code> before processing input lines -R <code> Run PHP <code> for every input line -F <file> Parse and execute <file> for every input line -E <end_code> Run PHP <end_code> after processing all input lines -H Hide any passed arguments from external tools. -S :<port> Run with built-in web server. -t <docroot> Specify document root <docroot> for built-in web server. -s Output HTML syntax highlighted source. -v Version number -w Output source with stripped comments and whitespace. -z <file> Load Zend extension <file>. args... Arguments passed to script. Use -- args when first argument starts with - or script is read from stdin --ini Show configuration file names --rf <name> Show information about function <name>. --rc <name> Show information about class <name>. --re <name> Show information about extension <name>. --rz <name> Show information about Zend extension <name>. --ri <name> Show configuration for extension <name>. </name></name></name></name></name></name></name></name></name></name></file></file></docroot></docroot></port></addr></end_code></end_code></file></file></code></code></begin_code></begin_code></code></code></file></file></file></path></port></addr></end_code></file></begin_code></end_code></code></begin_code></code></file></code>
<code>执行一个PHP文件
<code><code><code>php [-f] xxx.php </code></code></code>
<code>可以传参数
<code><code><code>php [-f] xxx.php 'hello' 'world' 2015 </code></code></code>
<code>传递给脚本的参数可在全局变量<code>$argv
中获取,全局变量$argc
存有$argv
数组中成员变量的个数(而非传送给脚本程序的参数的个数)
<code>001.php
<code><code><code><!--?php var_dump($argc); echo ; var_dump($argv); ?--> </code></code></code>
<code>执行001.php
<code><code><code>php 001.php 'hello world' 2015 </code></code></code>
<code>输出
<code><code><code>int(3) array(3) { [0]=> string(7) 001.php [1]=> string(11) hello world [2]=> string(4) 2015 } </code></code></code>
<code>也可以直接运行 PHP 代码
<code><code><code>php -r 'echo Hello World ;' #输出 Hello World </code></code></code>