PHP 的 exec() 可以运行节点模块吗?

问题描述

我想使用 exec() 函数PHP 页面显示命令的输出。如果我在 ubuntu 的终端中运行该命令,则该命令运行良好,但在 PHP 代码中却没有。 md2gslides 是一个使用 Google Slides API 将 .md (markdown) 文件转换为 Google 幻灯片的库。我使用 npm 安装了 md2gslides。下面是我写的一段代码

$output=array();
exec('"/home/user/.npm-global/bin/md2gslides" "/var/www/html/test/files/slides.md" --copy=1z3XLhVWc03U3deHy --title "Test Slide" --no-browser 2>&1',$output);
print_r($output);

感谢任何帮助。

这里是错误

Array
(
[0] => internal/validators.js:125
[1] => throw new ERR_INVALID_ARG_TYPE(name,'string',value);
[2] => ^
[3] =>
[4] => TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type undefined
[5] => at validateString (internal/validators.js:125:11)
[6] => at Object.join (path.js:1147:7)
[7] => at Object. (/home/user/.npm-global/lib/node_modules/md2gslides/bin/md2gslides.js:33:38)
[8] => at Module._compile (internal/modules/cjs/loader.js:778:30)
[9] => at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10)
[10] => at Module.load (internal/modules/cjs/loader.js:653:32)
[11] => at tryModuleLoad (internal/modules/cjs/loader.js:593:12)
[12] => at Function.Module._load (internal/modules/cjs/loader.js:585:3)
[13] => at Function.Module.runMain (internal/modules/cjs/loader.js:831:12)
[14] => at startup (internal/bootstrap/node.js:283:19)
[15] => at bootstrapNodeJscore (internal/bootstrap/node.js:623:3)
)

这里有什么提示吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...