将包含文件与 PHP 关联数组一起使用

Using Include Files with PHP Associative Array

我在 wordpress 插件中有一个活动列表页面,我想它显示了日期和时间 date.It 显示 14 天的价值。

我使用关联数组获取服务器日期并将其分解为一个数字。每一天都有一个与之关联的包含文件。

我正在尝试让它对这些日期进行排序,然后包含该文件以便显示。

当使用下面的代码时,它工作正常。显示所有 14 天包含的键、日期、值和名称。

$compare = array($getshow1=>("day1.php"),$getshow2=>("day2.php"),$getshow3=> ("day3.php"),$getshow4=>("day4.php"),$getshow5=>("day5.php"),$getshow6=>("day6.php"),$getshow7=>("day7.php"),$getshow8=>("day8.php"),$getshow9=>("day9.php"),$getshow10=>("day10.php"),$getshow11=>("day11.php"),$getshow12=>("day12.php"),$getshow13=>("day13.php"),$getshow14=>("day14.php")); 

ksort($compare);

foreach($compare as $x => $x_value) {
echo "Key=" . $x . ", Value=" . $x_value;
echo "<br>";
}

然而,当将其更改为以下排序以尝试使用包含时,它起作用了,但由于某种原因只显示了 14 个中的大约一半。

ksort($compare);

foreach($compare as $x => $x_value) {
include $x_value;

}

我在想我需要使用一些功能,但我已经研究了一段时间并且认为我有代码块。 任何帮助将不胜感激。

使用关联数组键作为字符串它会工作正常:) 如果您的 php 文件位于不同目录中,请确保您的 php 文件应位于同一目录中,而不是在数组值中定义其正确路径。

你的数组应该是这样的

  $compare = array(
    'getshow1'=> "day1.php",
    'getshow2'=> "day2.php",
    'getshow3'=> "day3.php",
    'getshow4'=> "day4.php",
    'getshow5'=> "day5.php",
    'getshow6'=> "day6.php",
    'getshow7'=> "day7.php"
    );

再试一次

ksort($compare);

foreach($compare as $x => $x_value){
   include $x_value;
}

出于某种原因,如果任何字段为空,排序将无法进行。因此,我为每个字段创建了一个空值,如果用户在填写数据时没有输入值,它会自动添加该值。

在 '' 之间使用 getshow 或 $getshow 不起作用,因为它只是根据那个排序,而不是需要拉入 14 个中的每一个的实际变量。我删除了 '',现在用没有空白一切都按我需要的那样工作。