在函数文件末尾包含模板PHP文件
我正在通过一本书学习基本的PHP。在书中,我做了以下示例:在函数文件末尾包含模板PHP文件,php,Php,我正在通过一本书学习基本的PHP。在书中,我做了以下示例: <?php session_start() if(array_key_exists("taskName", $_GET)) { $_SESSION["taskList"][] = $_GET["taskName"]; } $taskList= []; if(array_key_exists("taskList", $_SESSION)) { $taskList = $_SESSION["taskList"];
<?php
session_start()
if(array_key_exists("taskName", $_GET)) {
$_SESSION["taskList"][] = $_GET["taskName"];
}
$taskList= [];
if(array_key_exists("taskList", $_SESSION)) {
$taskList = $_SESSION["taskList"];
}
include "template.php";
据我所知,template.php并不像书中那样从functions.php获取信息
在上述文档中,有以下示例:
<?php
$a = 1;
include 'b.inc';
?>
因此,b.inc将拥有$a var。这与书中的情况相同。当我尝试下面的代码时,它在我的计算机上运行良好(它会产生一些输出) 文件:first.php
<?php
$taskList = [];
$taskList[]=5;
$taskList[]=6;
include 'second.php';
?>
文件:second.php
<table>
<tr>
<th>Tasks</th>
</tr>
<?php foreach($taskList as $task) : ?>
<tr>
<td><?=$task?></td>
</tr>
<?php endforeach; ?>
</table>
任务
您的示例运行得很好,但是由于我无法思考问题到底从何处开始,因此我建议
- 编辑
行,在行尾添加分号session\u start()
- 确保打开functions.php文件的url,而不是template.php文件
- 如果在请求文件functions.php而不使用GET参数时出现此错误,请尝试提供参数。喜欢
<?php
session_start();
if(array_key_exists("taskName", $_GET)) {
$_SESSION["taskList"][] = $_GET["taskName"];
}
$taskList= [];
if(array_key_exists("taskList", $_SESSION)) {
$taskList = $_SESSION["taskList"];
}
include "template.php";
<table>
<tr>
<th>Tasks</th>
</tr>
<?php foreach($taskList as $task) : ?>
<tr>
<td><?=$task?></td>
</tr>
<?php endforeach; ?>
</table>
您想问的问题是。。。什么?您的代码中包含functions.php或template.php了吗?另外,不要认为
是一个有效的语句,也不要将长的php标记与短的php标记(即
和
)混合使用。您是否访问浏览器中的主文件或template.php?看起来是后者。包含的文件不可能丢失父文件中定义的变量。@MaxZoom实际上我正在试图理解为什么不起作用,因为这本书(我认为是正确的)是有效的。@ryo7689
非常有效,您是否在PHP配置中启用了short\u tags
。嗨,编辑了这个问题以最好地描述我的问题。我认为短标签没有问题。请让我知道这是否适用于您:php first.php
Hi@MaxZoom是的,它帮助我了解我做错了什么。在书中,他们访问“第二个”和“第一个”,这是我的模板,仅用于显示结果。谢谢,很高兴我能提供帮助。
<?php
session_start();
if(array_key_exists("taskName", $_GET)) {
$_SESSION["taskList"][] = $_GET["taskName"];
}
$taskList= [];
if(array_key_exists("taskList", $_SESSION)) {
$taskList = $_SESSION["taskList"];
}
include "template.php";
<table>
<tr>
<th>Tasks</th>
</tr>
<?php foreach($taskList as $task) : ?>
<tr>
<td><?=$task?></td>
</tr>
<?php endforeach; ?>
</table>