将PHP数组传递给NodeJS

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (1)
  • 关注 (0)
  • 查看 (194)

如何将PHP数组传递给Nightmare NodeJS脚本?这就是我所在的地方:

 /*Original array $titles = 
 Array
 (
 [0] => title 1 with, a comma after with
 [1] => title 2
 [2] => title 3
 [3] => title 4
 )
 */

//PHP
$json_titles = json_encode($titles);
echo $json_titles;
//  Output:  ["title 1 with, a comma after with","title 2","title 3","title 4"]
// Pass to Nightmare NodeJS script with:
shell_exec('xvfb-run node app.js ' . $json_titles);

//NodeJS app.js:

const getTitles = process . argv[2];
console.log(getTitles)

// Output: [title 1 with, a comma after with,title 2,title 3,title 4]

如何在PHP中使用相同的数组到NodeJS?

如你所见,西蒙带着逃避者来救援。谢谢西蒙!我最后还在Node JS脚本中再迈出一步。我需要:getTitles = JSON.parse(getTitles);

提问于
用户回答回答于

更改你的shell_exec以逃避json,如下所示:

shell_exec('xvfb-run node app.js ' . escapeshellarg($json_titles));

这会转义JSON中的双引号,以便它们正确传递给节点。

您应该在将变量传递到命令行时执行此操作,以减少错误和安全风险。

扫码关注云+社区

领取腾讯云代金券