使用 shell_exec 将 Bash 个参数传递给 PHP 文件

Passing Bash Arguments to PHP File with shell_exec

我有一个通过 PHP 文件调用的 bash 脚本。对于初学者来说,这些文件的内容如下:

script.sh

#!/bin/bash
term=
curl -H "Accept: text/plain" -s "https://some-api.com/search?term=$term&limit=1"

php 文件

<?php
$message = shell_exec("script.sh '".$term."'");
$term    = escapeshellarg($term);
print_r($message);
?>

在上面的例子中,script.sh 通过 运行 找到类似 ./script.sh search-term 的东西。

但是当运行使用PHP文件提取相同的信息时,我遇到了错误。

最终我想 运行 一个 bash 脚本,包括参数,通过 PHP 文件.

我大部分时间都在尝试使用 this answer 中提出的解决方案,感觉我的 PHP 文件应该可以工作。

我知道我的脚本和编码肯定是 hacky,而且显然不起作用 - 有人对我可能做错的事情有任何意见吗?

可以使用$argv获取命令行参数:

$term = $argv[1];

和运行:

php file.php argument