如何正确使用PHP模板
P粉738346380
P粉738346380 2024-02-17 19:44:27
0
1
324

我是 PHP 新手,目前正在阅读《PHP 绝对初学者》一书。书中目前正在教授有关模板化和使用 StdClass() 对象以避免命名冲突的内容。

我有一个名为 page.php 的模板文件和一个名为 index.php 的主页文件。

我的page.php代码

<?php
return "<!DOCTYPE html>
<html>
<head>  
<title>$pageData->title</title>
<meta http-equiv='Content-Type' content='text/html;charset=utf-8'/>
</head>
<body>
$pageData->$content
</body>
</html>";

我的index.php

<?php
//this correctly outputs any errors 
error_reporting( E_ALL );
ini_set("display_errors", 1);

$pageData = new stdClass();

$pageData->title = "Test title";
$pageData->content = "<h1>Hello World</h1>";
$page = include_once "templates/page.php";
echo $page;

我收到的错误是

警告:第 5 行 C:\xampp\htdocs\ch2\templates\page.php 中未定义变量 $title

警告:第 9 行 C:\xampp\htdocs\ch2\templates\page.php 中未定义变量 $content

我不明白这一点,因为这正是本书所教的内容,如果有任何帮助,我们将不胜感激,如果有更好的方法来使用模板,请记住我是初学者,所以请保持简单!

P粉738346380
P粉738346380

全部回复(1)
P粉129168206

你的 page.php 看起来有点奇怪。 return 不是我在打印 html 时使用的东西。另外,您在 php 标记中使用 php 和 html,这是无法工作的。试试这个:


  

<?php echo $pageData->title; ?>



content; ?>

你的index.php中不需要echo $page,让page.php来做这件事。

/编辑:第 9 行也有一个拼写错误:$pageData->$content; 我已更正。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板