Php 显示某些文件夹内容

Php 显示某些文件夹内容,php,directory,Php,Directory,是否可以只显示网页中文件夹中的某些内容? 我已设法使用带有readdir的“php”脚本将所有文件夹内容显示为列表: <?php $dir = opendir('y1'); echo '<ul>'; while ($read = readdir($dir)) { if ($read!='.' && $read!='..') { echo '<li><a hr

是否可以只显示网页中文件夹中的某些内容? 我已设法使用带有
readdir
的“php”脚本将所有文件夹内容显示为列表:

<?php
    $dir = opendir('y1');
    echo '<ul>';
    while ($read = readdir($dir))
    {
        if ($read!='.' && $read!='..')
        {
            echo '<li><a href="y1/'.$read.'"><span class="clicks">'.$read.'</span></a></li>';
        }
    }
    echo '</ul>';
    closedir($dir); 
?>


是否可以修改此代码以仅显示例如以字母“n”开头的所有文件?

是的,您可以使用substr检查第一个字母

<?php
$dir = opendir('y1');
echo '<ul>';
while ($read = readdir($dir))
{
    if (substr($read,0,1)=='n') //<--here
    {
        echo '<li><a href="y1/'.$read.'"><span class="clicks">'.$read.'</span></a></li>';
    }
}
echo '</ul>';
closedir($dir); 
?>


您对
'。
'..
的原始检查不再需要,因为它们也不是以
n
开头的

尝试此项以获取名称以
n
开头的
文件

条件
if($read[0]='n')
如下

<?php
    $dir = opendir('y1');
    echo '<ul>';
    while ($read = readdir($dir))
    {
        if ($read[0]=='n')
        {
            echo '<li><a href="y1/'.$read.'"><span class="clicks">'.$read.'</span></a></li>';
        }
    }
    echo '</ul>';
    closedir($dir); 
?>

您可以使用which,如果在字符串中找到或未找到,它将返回true或false

<?php
$dir = opendir('y1');
echo '<ul>';
while ($read = readdir($dir))
{
    if (preg_match("/^[n]/i", $read))
    {
        echo '<li><a href="y1/'.$read.'"><span class="clicks">'.$read.'</span></a></li>';
    }
}
echo '</ul>';
closedir($dir); 
?>

使用这意味着您可以调整代码以仅显示包含任何模式的文件

例如,以
.png
.jpg

结尾的文件在回显之前添加
if($read[0]='n'){