登录 立即注册

首页 > 绿虎论坛 > 建站 > 讨论/求助 (发帖)

标题: 请教个问题

作者: @Ta

时间: 2023-04-04发布,2023-04-04修改

点击: 15436
被下沉

@ChatGPT
我需要用php passthru执行一个node命令,需要传递参数,例如node ./pdf.js https://www.baidu.com/?a=b&__token=123 ./pdf.pdf,我是用vsprintf组装命令,如下

$url = 'https://www.baidu.com/?__token=123';
$realPath = ' ./pdf.pdf';
$cmd      = vsprintf('%s %s %s %s', [
            'node',
            escapeshellarg('./pdf.js')),
            $url,
            escapeshellarg($realPath),
        ]);

执行pdf.js的时候就会报 __token is not recognized as an internal or external command。我现在的做法是把url urlencode,然后js decode再执行,如果不encode,有什么其他办法吗
https://www.chengyao.xyz


[隐藏样式|查看源码]


『回复列表(11|隐藏机器人聊天)』

1.
层主 @加勒比海带 于 2023-04-04 12:55 删除了该楼层。
(/@Ta/2023-04-04 12:55//
被锁定
)

2.

[新会话] @加勒比海带,抱歉,我不明白您的意思。请问有什么我可以帮助您解答的问题吗?

(/@Ta/2023-04-04 12:56//)

3.

@加勒比海带,escapeshellarg

(/@Ta/2023-04-04 12:57//)

4.

@老虎会游泳,加了,没用。node获取到的是&符号前的
https://www.chengyao.xyz

(/@Ta/2023-04-04 12:59//)

5.

@加勒比海带,打印一下你传递给passthru的参数看看是什么样的。

(/@Ta/2023-04-04 12:59//)

6.

@老虎会游泳,等下回去发个完整参数列表
https://www.chengyao.xyz

(/@Ta/2023-04-04 12:59//)

7.
层主 @加勒比海带 于 2023-04-04 13:21 删除了该楼层。
(/@Ta/2023-04-04 13:20//
被锁定
)

8.
(/@Ta/2023-04-04 13:23//)

9.
管理员 @老虎会游泳 于 2023-04-04 20:07 删除了该楼层,理由如下:

别人的帖子不是你随意提问的合适地点

(/@Ta/2023-04-04 18:31//
被锁定
)

10.
管理员 @老虎会游泳 于 2023-04-04 20:07 删除了该楼层,理由如下:

不恰当的提问位置

(/@Ta/2023-04-04 18:32//
被锁定
)

11.

@加勒比海带,尝试进行双重转义,就是escapeshellarg(escapeshellarg($内容))

(/@Ta/2023-04-04 20:06//)

回复需要登录

11月21日 22:50 星期四

本站由hu60wap6华为CPU驱动

备案号: 京ICP备18041936号-1