java多线程    Java入门    vsftp    ftp    linux配置    centos    FRP教程    HBase    Html5缓存    webp    zabbix    分布式    neo4j图数据库    

php命令行写shell应用

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 '\n';
}
?>

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 \n";
}
?>

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

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

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"
}


This entry was posted in Linux, PHP and tagged , . Bookmark the permalink.
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:月小升博客https://java-er.com/blog/php-shell/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
您的评论是我写作的动力.

Leave a Reply

Your email address will not be published. Required fields are marked *

*

*