如何将参数从bash传递到php脚本?

2021-12-29 00:00:00 shell parameter-passing bash parameters php

我已经完成了一个运行 php 脚本的 bash 脚本.它在没有参数的情况下工作正常,但是当我添加参数(id 和 url)时,会出现一些错误:

I have done a a bash script which run php script. It works fine without parameters but when I add parameters (id and url), there are some errors:

PHP Deprecated:  Comments starting with '#' are deprecated in /etc/php5/cli/conf                                                                                        .d/mcrypt.ini on line 1 in Unknown on line 0
Could not open input file: /var/www/dev/dbinsert/script/automatisation.php?                                                                                        id=1

我像这样从 bash 运行 php 脚本:

I run php script from the bash like this:

php /var/www/dev/dbinsert/script/automatisation.php?id=19&url=http://bkjbezjnkelnkz.com

推荐答案

Call it as:

Call it as:

php /path/to/script/script.php -- 'id=19&url=http://bkjbezjnkelnkz.com'

另外,修改您的 PHP 脚本以使用 parse_str():

Also, modify your PHP script to use parse_str():

parse_str($argv[1]);

如果索引 $_SERVER['REMOTE_ADDR'] 未设置.

更高级的处理可能需要getopt(),但parse_str() 是让它工作起来的一种快速而简单的方法.

More advanced handling may need getopt(), but parse_str() is a quick'n'dirty way to get it working.

相关文章