gpt4 book ai didi

php - 为什么这不包括所有文件?

转载 作者:行者123 更新时间:2023-11-30 01:31:37 25 4
gpt4 key购买 nike

下面的代码仅包含第一个文件。目前总共有2个文件,以后会购买更多。我该如何编码以包含所有文件?

该代码可以工作,但只包含 1 个文件,因此它无法按预期方式工作。

$result = $this->db->query("SELECT directory FROM modules WHERE enabled = {es} ORDER BY id ASC", 'yes');
$num = $result->numberOfRows;

while($row = $result->getArray())
{
if($num != 0)
{
if(file_exists($this->root . '/modules/' . $row['directory']))
{
include($this->root . '/modules/' . $row['directory'] . '/' . $row['directory'] . '.php');
}
else
{
$this->db->query("DELETE FROM modules WHERE directory = {es}", $row['directory']);
}
}
}

编辑:我发现了问题。我包含的文件中使用相同的变量“$result”和“$row”进行 SQL 查询。因此,当它包含并执行这些文件时,它们就会相互重置。

最佳答案

看起来还可以。您是否检查了循环中的代码是否迭代了两次?

可能是包含的第一个文件将 $num 的值设置为 0。如果发生这种情况,则循环将继续,但不再执行包含模块的代码。无论如何,这个检查是没有必要的。如果查询不返回行,则循环条件第一次的计算结果应该为 false,因此 if 不会添加任何值。

另一个问题可能是文件名不匹配。也许存在拼写错误,或者大小写不匹配(Linux 文件名区分大小写!)。尝试使用 require 而不是 include。如果找不到模块,它将失败,因此如果出现这种情况,它会为您提供更好的信息。

关于php - 为什么这不包括所有文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17385884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com