是否可以在网页中仅显示文件夹中的某些内容?我已经设法使用'php'脚本与readdir
显示所有的文件夹内容作为一个列表:
<?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
开始的files
条件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);
?>
您可以使用preg_match()
,它使用正则表达式,如果在字符串中找到模式,该正则表达式将返回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
结尾的文件