任何人都可以指导我实现php作为nodejs应用程序的模板。我打算使用:PHP仅加载前端HTML模板(安全用途(ExpressJS是我的后端。
我在这里实现相同的震惊,我正在附加以下代码:
var phpnode = require("php-node");
app.engine('php', phpnode);
app.set('view engine', 'php');
我正在尝试这样加载模板:
router.get('/index.php', function(req, res, next) {
res.render('index.php');
});
最小示例:
文件结构:
- ./test.js-我们的nodejs文件
- ./php/- 我们的带有PHP文件的视图文件夹
- ./php/phpinfo.php-我们的测试PHP文件
./test.js:
var express = require('express'),
app = express(),
//make sure that `bin` location is right for you system
phpnode = require('php-node')({bin:"/usr/local/bin/php"});
app.set('views', __dirname+'/php/');
app.engine('php', phpnode);
app.set('view engine', 'php');
app.all('/phpinfo.php', function(req, res) {
res.render('phpinfo');
})
var port = process.env.PORT || 8081;
app.listen(port, function() {
console.log("Listening on " + port);
})
./php/phpinfo.php
<?php phpinfo(); ?>
开放http://127.0.0.1:8081/phpinfo.php在浏览器中,您应该看到phpinfo文本输出(不是html,纯文本,因为我们在cli模式下运行,就像您在CLI模式一样跑步,它在终端(
告诉我,如果您不需要CLI模式,我会尝试找出如何切换。