操作系統(tǒng) 占存:1158720KB 時(shí)間:2014-04-22
軟件介紹: Ubuntu是一種免費(fèi)分發(fā)和開(kāi)源的基于Linux的操作系統(tǒng)為人類設(shè)計(jì)的人類,人沒(méi)有以前的Linux操作...
Linux用戶們經(jīng)常會(huì)遇到php文件,面對(duì)這些php文件,我們有時(shí)會(huì)使用命令行執(zhí)行php文件進(jìn)行傳參。今天華軍小編給大家展示的是Linux系統(tǒng)使用命令行執(zhí)行php文件傳參的步驟,精心挑選的內(nèi)容希望大家多多支持、多多分享,喜歡就趕緊get哦!。
具體操作步驟:
要做多語(yǔ)言搜索索引,可是php程序要通過(guò)在Linux系統(tǒng)的php命令來(lái)執(zhí)行文件,這樣php程序文件中的變量便無(wú)法獲取。
所以要進(jìn)行傳參,但是命令行下執(zhí)行php,是不走apache等這類東西的,沒(méi)有什么http協(xié)議,所有g(shù)et,post傳參根本不起作用,并且會(huì)被報(bào)錯(cuò),如下:
root@test:/pub/www/# php /pub/www/product/Crondo/makeindex.php?lang=en
Could not open input file: /pub/www/product/Crondo/makeindex.php?lang=en
可以通過(guò)在php執(zhí)行文件中獲取系統(tǒng)環(huán)境變量$argv 來(lái)得到要傳遞的參數(shù)
1.test.php測(cè)試文件:
#!/usr/bin/php
《?php
print_r($argv);
echo “n”;
echo “Total number of paramter is : “.$argc;
echo “n”;
???》
2.命令行調(diào)用:
test@ubuntu:~/php$ php test.php 111 222 333 444
All param is :
Array
?。?/p>
[0] =》 test.php //參數(shù)0,腳本本身的文件名
[1] =》 111//參數(shù)1
?。?] =》 222//參數(shù)2
?。?] =》 333//參數(shù)3
[4] =》 444//參數(shù)4
?。?/p>
Total number of paramter is : 5 //$argc的值為參數(shù)的總數(shù)
這種傳參方式,跟shell很像
test@ubuntu:~/shell$ sh test.sh 111 222
向test.sh傳了兩個(gè)參數(shù)111,222,shell會(huì)得到三個(gè)參數(shù),$0為文件本身,$1為參數(shù)1,$2為參數(shù)2.不同的是,php得到的是以數(shù)組的形式,而shell不是
以上就是小編總結(jié)的Linux系統(tǒng)中使用命令行執(zhí)行php文件進(jìn)行傳參的方法了,還不會(huì)這項(xiàng)操作的用戶快來(lái)看看吧,相信看完這篇教程后,會(huì)讓你對(duì)這個(gè)操作更加的了解。