我有这个简单的功能
function render($template, $values = [])
{
// if template exists, render it
if (file_exists("../templates/$template"))
{
// extract variables into local scope
extract($values);
// render header
require("../templates/header.php");
// render template
require("../templates/$template");
// render footer
require("../templates/footer.php");
}
// else err
else
{
trigger_error("Invalid template: $template", E_USER_ERROR);
}
当我在我的localhost上工作时这很好用,但当我在我的webhost上传文件时,这个函数在php文件中使用如下 - >
<?php
// configuration
require("../includes/config.php");
render("mainpage_template.php", ["title" => "Welcome "]);
?>
我在标题中写了这个解析错误。为什么它只在我的localmachine上工作?
答案 0 :(得分:1)
你在本地使用的是PHP 5.4吗?渲染线使用初始化数组的新方法。尝试将["title" => "Welcome "]
替换为array("title" => "Welcome ")