@aarondewes/php 中文文档教程
express-php-view-engine
![构建状态](https://github.com/rooseveltframework/express- php-view-engine/workflows/CI/badge.svg )
此模块允许您使用 PHP 作为 Express 框架 应用程序的模板系统。 此模块由 Roosevelt web 框架构建和维护 team,但它也可以独立于 Roosevelt 使用。
Usage
首先将 php
声明为您应用中的依赖项。
然后在您的 Express 应用程序中将 PHP 设置为视图引擎:
const express = require('express')
const app = express()
const php = require('php')
// setup php templating engine
app.set('views', path.join(__dirname, 'templates'))
app.set('view engine', 'php')
app.engine('php', php.__express)
// define a route
app.get('/', (req, res) => {
res.render('index.php', {
hello: 'world'
})
})
然后,假设您的 templates/index.php
如下所示:
<p><?=$hello?></p>
输出将是:
<p>world</p>
注意:该模块假定您运行它的系统具有PHP 已安装并且它在您的 PATH 中。
Configuration
如上例所示,默认情况下,此模块会将 Express 模型中的值注册为 PHP 脚本中的全局变量。 如果需要,您可以通过两种方式禁用此行为:
禁用全局注册:
const php = require('php')
php.disableRegisterGlobalModel()
// can be reenabled by calling php.enableRegisterGlobalModel()
禁用基于每个路由的注册:
app.get('/', (req, res) => {
res.render('index.php', {
_REGISTER_GLOBAL_MODEL: false,
hello: 'world'
})
})
express-php-view-engine
![Build Status](https://github.com/rooseveltframework/express-php-view-engine/workflows/CI/badge.svg )
This module allows you to use PHP as a templating system for Express framework applications. This module was built and is maintained by the Roosevelt web framework team, but it can be used independently of Roosevelt as well.
Usage
First declare php
as a dependency in your app.
Then set PHP as a view engine in your Express app:
const express = require('express')
const app = express()
const php = require('php')
// setup php templating engine
app.set('views', path.join(__dirname, 'templates'))
app.set('view engine', 'php')
app.engine('php', php.__express)
// define a route
app.get('/', (req, res) => {
res.render('index.php', {
hello: 'world'
})
})
Then, assuming your templates/index.php
looks like this:
<p><?=$hello?></p>
The ouptut will be:
<p>world</p>
Note: This module presumes that the system you run this on has PHP installed and that it's in your PATH.
Configuration
As shown in the above example, this module will register values from the Express model as global variables in your PHP script by default. You can disable this behavior if desired two ways:
Disable registering globally:
const php = require('php')
php.disableRegisterGlobalModel()
// can be reenabled by calling php.enableRegisterGlobalModel()
Disable registering on a per route basis:
app.get('/', (req, res) => {
res.render('index.php', {
_REGISTER_GLOBAL_MODEL: false,
hello: 'world'
})
})