序列问题 php 全球


sequence issue php glob

我想在网页中依次显示文件,所以我在 PHP 中使用了 Gob。我希望我的文件按以下方式显示:

video1
video2
video3
  .
  .
  .
video9
video10
video11

但我得到的输出是:

video1
video10
video11
video2
video3
 .......

Follwing就是我写的确切逻辑:

if ($_GET['name'])
{
        $query = $_GET['name'];
}else{
        $query = "NULL";
}
foreach(glob('video/*'.$query.'*.mp4') as $filename)
{
        $filename = substr($filename, 6);
        echo "<a href=".$server_path."".$filename.">".$filename."</a><br>";
}

请帮帮我伙计们...

您可以将自然顺序排序函数 natsort 用作:

$arr = glob('video/*'.$query.'*.mp4');
natsort($arr);
foreach($arr as $filename) {

它不会解决眼前的问题,但至少现在你知道为什么人们将他们的文件命名为:video0001等等。

对于此类情况,有一个排序功能。