1

我有这个代码:

<?php
$files = glob("notes/last.*.*/table.php");
rsort($files);
foreach($files as $tables) {include $tables;}
?>

输出:

tables
tables
tables

这将包括许多 php 文件,从最后开始到较早的帖子。

我只想包括输出的前10 个。(就是最后10个加的)怎么办呢?

4

3 回答 3

3

尝试:

$limitedArray = array_slice($files, count($files) - 10);
于 2013-10-03T16:14:14.413 回答
2

测试这个:

$i= 0;
foreach($files as $tables) {
  $i++;
  include $tables;
  if($i == 10) break;
}
于 2013-10-03T16:18:47.457 回答
0

您不需要进行反向排序,以便输入的最后 10 个是数组中的前 10 个。您可以获取数组的计数,将其从 10 中减去,然后循环到数组的末尾。您需要将 foreach 更改为 for 循环。

这应该包括 $files 数组中的最后 10 个:

for ($i = (count($files) - 10); $i < count($files); $i++)
{
    include $files[$i];
}
于 2013-10-03T16:26:42.850 回答