通过文件名中的特定字符过滤要显示的图像

时间:2016-09-02 05:11:49

标签: php

我正在使用此代码加载位于.png目录中的所有img图片,但我只需要选择并呈现以ABCDEF字符开头的图像进行选择和显示。敌人的例子

╔═════════════════════╦═══════════════════╗
║ ABCDEF_seaview.png  ║ will be Selected  ║ 
╠═════════════════════╬═══════════════════╣
║ GHIJKL_seaview.png  ║ will be Ignored   ║
╚═════════════════════╩═══════════════════╝

这是代码:

<?php
    $dirname = "../img/";
    $images = glob($dirname."*.png");
     foreach($images as $image) {
        $filename = basename($image);
        echo '<div class="img-panel">';
        echo '<img src="'.$image.'" class="" alt=""/>';
        echo '</div>';
     }
?>

1 个答案:

答案 0 :(得分:1)

检查在创建UI之前开始。

<?php
    $dirname = "../img/";
    $images = glob($dirname."*.png");
    foreach($images as $image) {
        $filename = basename($image);
        if (startsWith($filename, "ABCDEF") {
            echo '<div class="img-panel">';
            echo '<img src="'.$image.'" class="" alt=""/>';
            echo '</div>';
        }
    }

function startsWith($haystack, $needle) {
    // search backwards starting from haystack length characters from the end
    return $needle === "" || strrpos($haystack, $needle, -strlen($haystack)) !== false;
}
?>