久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

php cli模式下獲取參數(shù)的方法

本篇文章主要介紹了php cli模式下獲取參數(shù)的方法,具有很好的參考價(jià)值。下面跟著小編一起來(lái)看下吧

PHP在cli模式下接收參數(shù)有兩種方法

1.使用argv數(shù)組

2.使用getopt方法

1.使用argv數(shù)組

例如:需要執(zhí)行一個(gè)php,并傳遞三個(gè)參數(shù)(type=news, is_hot=1, limit=5)

創(chuàng)建test.php

<?php
print_r($argv);
?>

在命令行執(zhí)行

php test.php news 1 5

輸出:

Array
(
  [0] => test.php
  [1] => news
  [2] => 1
  [3] => 5
)

可以看到argv[0]為當(dāng)前執(zhí)行的php文件名稱,而argv[1]~argv[3]則是傳遞的參數(shù)的值

argv[1]等于type的值

argv[2]等于is_hot的值

argv[3]等于limit的值

這樣可以根據(jù)argv數(shù)組來(lái)獲取傳遞的參數(shù)進(jìn)行后續(xù)的處理操作。

缺點(diǎn):

使用argv數(shù)組,可以按順序獲取傳遞的參數(shù)。但獲取后,需要做一個(gè)對(duì)應(yīng)處理,上例中需要把a(bǔ)rgv[1]對(duì)應(yīng)type參數(shù),argv[2]對(duì)應(yīng)is_hot參數(shù),argv[3]對(duì)應(yīng)limit參數(shù)。而如果在傳遞的過(guò)程中,參數(shù)順序?qū)戝e(cuò),則會(huì)導(dǎo)致程序出錯(cuò)。

例如:

<?php
$param = array();
$param['type'] = $argv[1];
$param['is_hot'] = $argv[2];
$param['limit'] = $argv[3];
print_r($param);
?>

執(zhí)行

php test.php news 1 5

輸出:

Array
(
  [type] => news
  [is_hot] => 1
  [limit] => 5
)

而傳遞順序不同,獲取到的參數(shù)數(shù)值會(huì)不同,導(dǎo)致后續(xù)程序出錯(cuò)

執(zhí)行

php test.php 1 5 news

輸出:

Array
(
  [type] => 1
  [is_hot] => 5
  [limit] => news
)

因此在使用argv數(shù)組傳遞參數(shù)時(shí),需要注意參數(shù)傳遞的順序。

2.使用getopt方法

getopt 從命令行參數(shù)列表中獲取選項(xiàng)

array getopt ( string $options [, array $longopts ] )

參數(shù):

options

該字符串中的每個(gè)字符會(huì)被當(dāng)做選項(xiàng)字符,匹配傳入腳本的選項(xiàng)以單個(gè)連字符(-)開頭。 比如,一個(gè)選項(xiàng)字符串 “x” 識(shí)別了一個(gè)選項(xiàng) -x。 只允許 a-z、A-Z 和 0-9。

longopts

選項(xiàng)數(shù)組。此數(shù)組中的每個(gè)元素會(huì)被作為選項(xiàng)字符串,匹配了以兩個(gè)連字符(–)傳入到腳本的選項(xiàng)。 例如,長(zhǎng)選項(xiàng)元素 “opt” 識(shí)別了一個(gè)選項(xiàng) –opt。

options 可能包含了以下元素:

單獨(dú)的字符(不接受值)

后面跟隨冒號(hào)的字符(此選項(xiàng)需要值)

后面跟隨兩個(gè)冒號(hào)的字符(此選項(xiàng)的值可選)

選項(xiàng)的值是字符串后的第一個(gè)參數(shù)。它不介意值之前是否有空格。

options 和 longopts 的格式幾乎是一樣的,唯一的不同之處是 longopts 需要是選項(xiàng)的數(shù)組(每個(gè)元素為一個(gè)選項(xiàng)),而 options 需要一個(gè)字符串(每個(gè)字符是個(gè)選項(xiàng))。

傳值的分隔符可以使用空格或=。

可選項(xiàng)的值不接受空格作為分隔符,只能使用=作為分隔符。

返回值

此函數(shù)會(huì)返回選項(xiàng)/參數(shù)對(duì),失敗時(shí)返回 FALSE。

選項(xiàng)的解析會(huì)終止于找到的第一個(gè)非選項(xiàng),之后的任何東西都會(huì)被丟棄。

1.使用options實(shí)例

a,b,c 為需要值

d 為可選值

e 為不接受值

<?php
$param = getopt('a:b:c:d::e');
print_r($param);
?>

執(zhí)行

php test.php -a 1 -b 2 -c 3 -d=4 -e 5

輸出:

Array
(
  [a] => 1
  [b] => 2
  [c] => 3
  [d] => 4
  [e] => 
)

2.使用longopts實(shí)例

type,is_hot 為需要值

limit 為可選值

expire 為不接受值

<?php
$longopt = array(
  'type:',
  'is_hot:',
  'limit::',
  'expire'
);
$param = getopt('', $longopt);
print_r($param);
?>

執(zhí)行

php test.php --type news --is_hot 1 --limit=10 --expire=100

輸出:

Array
(
  [type] => news
  [is_hot] => 1
  [limit] => 10
  [expire] => 
)
【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過(guò)測(cè)試外,其他素材未做測(cè)試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請(qǐng)勿用于商業(yè)用途。如損害你的權(quán)益請(qǐng)聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。

相關(guān)文檔推薦

這篇文章主要介紹了PHP有序表查找之插值查找算法,簡(jiǎn)單分析了插值查找算法的概念、原理并結(jié)合實(shí)例形式分析了php實(shí)現(xiàn)針對(duì)有序表插值查找的相關(guān)操作技巧,需要的朋友可以參考下
下面小編就為大家分享一篇ThinkPHP整合datatables實(shí)現(xiàn)服務(wù)端分頁(yè)的示例代碼,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
下面小編就為大家分享一篇PHP實(shí)現(xiàn)APP微信支付的實(shí)例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
這篇文章主要介紹了PHP實(shí)現(xiàn)的多維數(shù)組排序算法,結(jié)合實(shí)例形式對(duì)比分析了php針對(duì)多維數(shù)組及帶有鍵名的多維數(shù)組進(jìn)行排序相關(guān)操作技巧與注意事項(xiàng),需要的朋友可以參考下
這篇文章主要為大家詳細(xì)介紹了php結(jié)合ajaxuploadfile實(shí)現(xiàn)無(wú)刷新文件上傳功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
本篇文章給大家詳細(xì)介紹了PHP開發(fā)接口使用RSA進(jìn)行加密解密方法,對(duì)此有興趣的朋友可以學(xué)習(xí)下。
主站蜘蛛池模板: 黄a大片| 亚洲精品乱码久久久久久9色 | 免费网站国产 | 国产精品不卡 | 日韩精品一区二区三区在线播放 | 婷婷精品 | 欧美精品久久久久久久久久 | 久久国产成人 | 国产精品视频 | 久久久久久久久综合 | 亚洲一区二区在线播放 | 欧美精品1区2区3区 精品国产欧美一区二区 | 欧美亚洲视频 | 欧美日韩高清免费 | 北条麻妃一区二区三区在线视频 | 成人精品在线观看 | 久久精品一区 | 国产精品一区二区三级 | 久久99精品久久久97夜夜嗨 | 特黄特色大片免费视频观看 | 国产小视频自拍 | 亚洲一区不卡 | 91欧美激情一区二区三区成人 | 日本不卡高字幕在线2019 | 欧美黑人狂野猛交老妇 | 特黄毛片| 欧美精品综合在线 | www.精品国产 | 亚洲国产欧美一区 | 日本精品视频在线 | 玖玖精品 | 九九热精品免费 | 精品一区二区三区不卡 | 国产一级视频在线 | 国产精品久久久久久久久久久免费看 | 精品视频一区二区 | 中文日本在线 | 国产一伦一伦一伦 | 精品在线一区 | 欧美性猛交一区二区三区精品 | 久久精品亚洲一区二区三区浴池 |