如何获得所有的图片和视频从一个特定的文件夹与php


How to get all pictures and videos from a specific folder with php?

我正在尝试以下代码:它似乎得到图像,但不是视频。也许PATHINFO_EXTENSION不能与字符串比较?

<?php
$files = glob("MyFolder/*.*");
for ($i = 0;$i < count($files);$i++) {
    $image = $files[$i];
    $supported_file = array(
        'jpg',
        'jpeg',
        'png',
        'mp4',
    );
    $ext = strtolower(pathinfo($image, PATHINFO_EXTENSION));
    if (in_array($ext, $supported_file)) {
        if (PATHINFO_EXTENSION == 'mp4') {
            echo '<video controls> <source src="' . $image . '" type="video/mp4"/>';
            echo '</video>';
        } else {
            echo '<img src="' . $image . '" alt="Random image" />';
        }
    } else {
        continue;
    }
}
?>

检查'mp4'扩展名时出现错误:

如果(PATHINFO_EXTENSION = = mp4)

您应该与$ext变量的值进行比较,如下所示:

if($ext == 'mp4')

PATHINFO_EXTENSION不是您的变量,它只是pathinfo()函数的一个参数,它告诉它返回给定路径的文件扩展名。

PHP Docs - pathinfo: http://php.net/manual/en/function.pathinfo.php

调用pathinfo()的返回值存储在变量$ext中,您需要对其进行比较。