zoukankan      html  css  js  c++  java
  • 命令行向php传入参数的两种方法

    ##$argv or $argc  
    $argv 包含当运行于命令行下时传递给当前脚本的参数的数组。  $argv[0]  就是脚本文件名。
    $argc 包含当运行于命令行下时传递给当前脚本的参数的数目。 脚本的文件名总是作为参数传递给当前脚本,因此 $argc  的最小值为 1。
    俩变量仅在 register_argc_argv 打开时可用。

    注意:$argv 和 $argc 在类方法或者函数内部 得声明全局变量

    <?php
    class A
    {
        public static function b()
        {
            var_dump($argv);
            var_dump(isset($argv));
        }
    }
    
    A::b();
    <?php
    printarg();
    
    function printarg(){
    global $argc,$argv;
    print($argc."个参数
    ");
    print_r($argv);
    }


    ##getopt
    array getopt  ( string $options  [, array $longopts  ] )
    options  该字符串中的每个字符会被当做选项字符,匹配传入脚本的选项以单个连字符(-)开头。   比如,一个选项字符串 "x" 识别了一个选项 -x。   只允许 a-z、A-Z 和 0-9。  longopts  选项数组。此数组中的每个元素会被作为选项字符串,匹配了以两个连字符(--)传入到脚本的选项。   例如,长选项元素 "opt" 识别了一个选项 --opt。  

    options  可能包含了以下元素:
    1.单独的字符(不接受值)
    2.后面跟随冒号的字符(此选项需要值)
    3.后面跟随两个冒号的字符(此选项的值可选)
    选项的值是字符串后的第一个参数。它不介意值之前是否有空格。


    返回值:
    此函数会返回选项/参数对,失败时返回 FALSE。


    Note:
    选项的值不接受空格(" ")作为分隔符。  
    options  和 longopts  的格式几乎是一样的,唯一的不同之处是 longopts  需要是选项的数组(每个元素为一个选项),而 options  需要一个字符串(每个字符是个选项)。
    选项的解析会终止于找到的第一个非选项,之后的任何东西都会被丢弃。

  • 相关阅读:
    SpringMVC + spring3.1.1 + hibernate4.1.0 集成及常见问题总结
    开涛spring3(9.4)
    开涛spring3(9.3)
    开涛spring3(9.2)
    开涛spring3(9.1)
    开涛spring3(8.4)
    分水岭算法——学习笔记
    【代码备份】pocs.m
    【代码备份】NLM插值
    【代码备份】原图降采样后进行NLM滤波
  • 原文地址:https://www.cnblogs.com/dytl/p/3723425.html
Copyright © 2011-2022 走看看