详解php命令行写shell实例

【相关学习推荐:php图文教程】

php 可以像java perl python 那样运行,今天发现如果我早早知道这个,或许我不会去学习java 和 python

当年学java不过为了一个程序放在服务器上,不停的跑啊跑,原来 php 也可以。

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 <addr>:<port> [-t docroot] [router]
 php [options] -- [args...]
 php [options] -a
 -a    Run as interactive shell
 -c <path>|<file> Look for php.ini file in this directory
 -n    No configuration (ini) files 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 <addr>:<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>.

1.用php命令行的方式执行php脚本,例如/usr/bin/php test.php

缩写 php test.php

test.php

<?php
for($i=0;$i<10;$i++){
 echo $i;
 echo '
';
}
?>

2.脚本开头第一行写上#!/usr/bin/php,然后可以把脚本设为可执行 chmod a+x test.php,之后就可以用命令行的方式直接执行脚本了,例如./test.php

#!/usr/bin/php
<?php
for($i=0;$i<10;$i++){
 echo $i;
 echo " java-er.com 
";
}
?>

执行一小时,看看php会不会挂,我希望一个命令行可以跑到天荒地老

#!/usr/bin/php
<?php
for($i=0;$i<360;$i++){
 echo $i;
 sleep(10);
 echo " java-er.com 
";
}
?>

3. 外部传入参数

 

3. 外部传入参数

#!/usr/bin/php
<?php
 var_dump($argc); //返回参数总个数
 var_dump($argv);
 
exit;
?>
./test.php

int(1)
array(1) {
 [0]=>
 string(10) "./test.php"
}
./test.php a java php

int(4)
array(4) {
 [0]=>
 string(10) "./test.php"
 [1]=>
 string(1) "a"
 [2]=>
 string(4) "java"
 [3]=>
 string(3) "php"
}

相关学习推荐:php编程(视频)

hmoban主题是根据ripro二开的主题,极致后台体验,无插件,集成会员系统
自学咖网 » 详解php命令行写shell实例