php 执行命令参数加双引号,将双引号中的bash脚本参数传递给php cli脚本

我试图将参数传递给bash脚本然后传递给php脚本,我已经完全看了30个链接,并尝试了十几个例子,而且无论出于什么原因我都无法让以下工作,我是非常沮丧,任何帮助都非常感激.

为了这个问题,让我说我有以下bash脚本(test.sh)

#!/usr/bin/env bash

/usr/bin/php test.php $@

我有以下PHP脚本(test.php)

print_r($argv);

我试图用以下参数执行bash脚本

./test.sh hello world "how are you"

以上结果如下

Array

(

[0] => test.php

[1] => hello

[2] => world

[3] => how

[4] => are

[5] => you

)

我正在寻找结果

Array

(

[0] => test.php

[1] => hello

[2] => world

[3] => how are you

)

非常感谢任何想法…我正在敲打桌子……

解决方法:

本来可以看看bash的手册页中的“QUOTING”块…(找到指向PARAMETERS块的指针)

/usr/bin/php test.php "$@"

标签:quoting,php,bash,command-line

来源: https://codeday.me/bug/20190816/1667391.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值