Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js NodeJs应用程序需要指南来实现php作为模板_Node.js_Express - Fatal编程技术网

Node.js NodeJs应用程序需要指南来实现php作为模板

Node.js NodeJs应用程序需要指南来实现php作为模板,node.js,express,Node.js,Express,任何人都可以指导我实现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

任何人都可以指导我实现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(); ?>
在浏览器中打开时,您应该看到phpinfo文本输出,而不是HTML纯文本,因为我们在CLI模式下运行php,就像在终端中运行它一样


如果您不在CLI模式下需要它,请告诉我,我将尝试了解如何切换它。

我已尝试了上述设置,但无法在视图目录/node\u app/firstApp/templates/中查找视图错误我收到了上述错误我已在模板目录中找到所有模板OK,给我一分钟,我会为你写最小样本好吧,我想我在设置中遗漏了一些东西。感谢老兄,它成功了,我错过了php节点的路径。