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

小潘seo 重庆小潘seo博客和你一起学习SEO知识,共同分享SEO优化~

在Linux系统通过命令行执行php文件怎么传参呢?估计很多朋友知道如何来执行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测试文件:

  1. #!/usr/bin/php
  2. <?php
  3. print_r($argv);
  4. echo“\n”;
  5. echo“Totalnumberofparamteris:“.$argc;
  6. echo“\n”;
  7. ?>

2.命令行调用:

  1. test@ubuntu:~/php$phptest.php111222333444
  2. Allparamis:
  3. Array
  4. (
  5. [0]=>test.php//参数0,脚本本身的文件名
  6. [1]=>111//参数1
  7. [2]=>222//参数2
  8. [3]=>333//参数3
  9. [4]=>444//参数4
  10. )//phpfensi.com
  11. Totalnumberofparamteris:5//$argc的值为参数的总数

这种传参方式,跟shell很像.

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

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

相关广告
  • 在Linux系统通过命令行执行php文件传参方法 在Linux系统通过命令行执行php文件传参方法 在Linux系统通过命令行执行php文件传参方法
相关阅读

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

2019/10/10 17:45:23 | 谷歌SEO算法 | 发外链