我想运行php与nodejs像https://www.npmjs.com/package/node-php
它很好,但我猜它只适用于旧版本的express,并且这个repo看起来不再需要维护了。
的样子
var php = require('php');
var app = express();
app.use("/", php.cgi("/path/to/wordpress"));
app.listen(3000);
,然后每个以.php
结尾的/
请求将调用运行php的cgi脚本并返回结果。
现在我想要实现的,看起来更像:
- 从节点定义调用哪个php文件
- 传递参数给它,所以php代码有上下文(有效载荷,参数,头…)
- 读取php代码响应(最好是json格式)
是否有使用nodejs的方式,或者我需要一个web调用像建议调用PHP方法从nodejs ?
不必启动php web服务器将是可取的将需要更多的设置和我的项目不会"开箱工作",我更喜欢只是安装php5,它已经完成了(我猜它安全的内存/进程以及这些调用应该经常使用)
您可以通过stdin
传递输入,然后使用fopen("php://stdin")
像普通文件一样读取它(file_get_contents("php://input")
也可以)。这里假设您只想运行一个简单的PHP脚本,而不是期望HTTP请求的所有方面。
输出取决于你的代码,所以只要确保在返回时调用json_encode()
。
下面是如何首先将数据作为stdin
传递的文档