zoukankan      html  css  js  c++  java
  • php getopt 小结

    php中的getop是用于接收cmd参数的时候用的
    例如当你再linxu 中 需要用php调试的时候,往往需要带参数调试
    getopt就是可以实现带参数传入的命令

    使用方式:
        array getopt ( string $options [, array $longopts ] )
    注意:
      $options字符串中的每个字符将被用来作为选项字符和对传递给脚本用一个连字符开始匹配选项( - )。例如,一个选项字符“x”对应一个选项-x。只有a - z,A - Z和0-9是允许的
      空格是不能作为选项字符的。

    note: 包含当运行于命令行下时传递给当前脚本的参数的数组。

    Note: 这个变量仅在 register_argc_argv 打开时可用。

    例1: 首先认识一下php变量  $argv

     
    <?php
      var_dump($argv);
    ?> 
    
    使用命令: php script.php arg1 arg2 arg3
    则会输出以下内容:
    array(4) {
      [0]=>
      string(10) "script.php"
      [1]=>
      string(4) "arg1"
      [2]=>
      string(4) "arg2"
      [3]=>
      string(4) "arg3"
    }
    
    例2: getopt 简单示例
    <?php
      $options = getopt("f:hp:");
      var_dump($options);
    ?> 
    
    使用命令: php script.php -f value -h  或者   php script.php -fvalue -h
    则会输出一下内容:
    array(2) {
      ["f"]=>
      string(5) "value"
      ["h"]=>
      bool(false)
    }
    
    例3:getopt
    <?php
    $shortopts  = "";
    $shortopts .= "f:";  // Required value
    $shortopts .= "v::"; // Optional value
    $shortopts .= "abc"; // These options do not accept values
    
    $longopts  = array(
        "required:",     // Required value
        "optional::",    // Optional value
        "option",        // No value
        "opt",           // No value
    );
    $options = getopt($shortopts, $longopts);
    var_dump($options);
    ?> 
    
    php script.php -f "value for f" -v -a --required value --optional="optional value" --option will output:
    输出:
    array(6) {
      ["f"]=>
      string(11) "value for f"
      ["v"]=>
      bool(false)
      ["a"]=>
      bool(false)
      ["required"]=>
      string(5) "value"
      ["optional"]=>
      string(14) "optional value"
      ["option"]=>
      bool(false)
    }
    
  • 相关阅读:
    4.12 活跃性
    4.13 ReentrantLock
    异步模式之生产者消费者
    同步模式之保护性暂停Guarded Suspension
    android 学习
    android 学习
    android 学习
    android 学习
    android 学习
    android 学习(开课博客)
  • 原文地址:https://www.cnblogs.com/zcy_soft/p/2093597.html
Copyright © 2011-2022 走看看