PHP基础之脚本传参

PHP基础之脚本传参

通常PHP都做http方式请求了,可以使用GET or POST方式接收参数,有些时候需要在shell命令下把PHP当作脚本执行,比如定时任务。这就涉及到在shell命令下如何给php传参的问题,通常有三种方式传参。

1. 使用$argv or $argc参数接收

#$argv, 所有参数的数组,默认第一个为文件名,若要取到第一个参数则:$argv[1]
#$argc, 所有参数总和,相当于 count($argv)

2. 使用getopt函数

  • 函数:
array getopt ( string $options   [,  array  $longopts ] )
  • 参数:
    • options
      该字符串中的每个字符会被当做选项字符,匹配传入脚本的选项以单个连字符(-)开头。 比如,一个选项字符串 "x" 识别了一个选项 -x。 只允许 a-z、A-Z 和 0-9。

    • longopts 选项数组。
      此数组中的每个元素会被作为选项字符串,匹配了以两个连字符(--)传入到脚本的选项。 例如,长选项元素 "opt" 识别了一个选项 --opt。

    • options 可能包含了以下元素:

      • 单独的字符(不接受值)
      • 后面跟随冒号的字符(此选项需要值)
      • 后面跟随两个冒号的字符(此选项的值可选)
$opt = getopt("s::p:m:habc",array('debug:','again::', 'help'));

3. 提示用户输入

  • 直接读取标准输入数据,写入标准输出
    • STDOUT 标准输出
    • STDIN 标准输入
fwrite(STDOUT,'请输入您的博客名:');
echo '您输入的信息是:'.fgets(STDIN);

作者:T&D
Q Q:335749143
邮箱:tanda.arch#gmail.com(@替换#)
出处:http://www.cnblogs.com/one-villager/
* 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/one-villager/p/7606722.html