【发布时间】:2017-07-05 00:36:45
【问题描述】:
我正在开发一个 IMDB 风格的网站,我需要动态查找电影的评论数量。评论存储在名为/moviefiles/moviename/review[*].txt 的文件夹中,其中[*] 是评论的编号。基本上我需要以整数形式返回该目录中存在多少这些文件。我该怎么做?
谢谢。
【问题讨论】:
标签: php file file-handling
我正在开发一个 IMDB 风格的网站,我需要动态查找电影的评论数量。评论存储在名为/moviefiles/moviename/review[*].txt 的文件夹中,其中[*] 是评论的编号。基本上我需要以整数形式返回该目录中存在多少这些文件。我该怎么做?
谢谢。
【问题讨论】:
标签: php file file-handling
这是一个运行良好的非常简单的代码。 :)
$files = glob('yourfolder/*.{txt}', GLOB_BRACE);
foreach($files as $file) {
your work
}
【讨论】:
使用 php DirectoryIterator 或 FileSystemIterator:
$directory = new DirectoryIterator(__DIR__);
$num = 0;
foreach ($directory as $fileinfo) {
if ($fileinfo->isFile()) {
if($fileinfo->getExtension() == 'txt')
$num++;
}
}
【讨论】:
您可以使用此 php 代码获取文件夹中文本文件的数量
<div id="header">
<?php
// integer starts at 0 before counting
$i = 0;
$dir = 'folder-path';
if ($handle = opendir($dir)) {
while (($file = readdir($handle)) !== false){
if (!in_array($file, array('.', '..')) && !is_dir($dir.$file))
{
$temp = explode(".",$file);
if($temp[1]=="txt")
$i++;
}
}
}
// prints out how many were in the directory
echo "There were $i files";
?>
</div>
【讨论】:
看看glob()函数:http://php.net/manual/de/function.glob.php
然后您可以使用sizeof() 来计算有多少文件。
【讨论】: