linux 命令行执行php文件,在Linux系统通过命令行执行php文件传参方法

要做多语言搜索索引,可是php程序要通过在Linux系统的php命令来执行文件,这样php程序文件中的变量便无法获取。

所以要进行传参,但是命令行下执行php,是不走apache等这类东西的,没有什么http协议,所有get,post传参根本不起作用,并且会被报错,如下:

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

可以通过在php执行文件中获取系统环境变量$argv 来得到要传递的参数

1.test.php测试文件:

#!/usr/bin/php

print_r($argv);

echo “\n”;

echo “Total number of paramter is : “.$argc;

echo “\n”;

?>

2.命令行调用:

test@ubuntu:~/php$ php test.php 111 222 333 444

All param is :

Array

(

[0] => test.php //参数0,脚本本身的文件名

[1] => 111//参数1

[2] => 222//参数2

[3] => 333//参数3

[4] => 444//参数4

)

Total number of paramter is : 5 //$argc的值为参数的总数

这种传参方式,跟shell很像

test@ubuntu:~/shell$  sh test.sh 111 222

向test.sh传了两个参数111,222,shell会得到三个参数,$0为文件本身,$1为参数1,$2为参数2.不同的是,php得到的是以数组的形式,而shell不是

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值