遍历文本文件并检查服务器上是否存在文件
Iterate through text file and check if file exist on server
我有一个包含 40.000 个文件路径的 txt 文件,我需要检查它们是否存在文件名。
要检查单个文件,我使用以下代码:
$filename='/home/httpd/html/domain.com/htdocs/car/002.jpg';
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
该代码有效。
现在我想遍历 txt 文件,其中每行包含一个路径
/home/httpd/html/domain.com/htdocs/car/002.jpg
/home/httpd/html/domain.com/htdocs/car/003.jpg
/home/httpd/html/domain.com/htdocs/car/004.jpg
...
我尝试使用此代码遍历 txt 文件,但我得到了所有文件的 "file does not exist"。
$file = "list.txt";
$parts = new SplFileObject($file);
foreach ($parts as $filename) {
if (file_exists($filename)) { echo "The file $filename exists"; }
else { echo "The file $filename does not exist"; }
}
当您加载文件时,尝试通过 explode() 函数将字符串分解为数组。
然后您将能够使用 file_exist 函数
进行验证
您的 list.txt
文件在每行末尾都有一个换行符。在 file_exists()
中使用 $filename
之前,您首先需要 trim 关闭它,例如
<?php
$file = "list.txt";
$parts = new SplFileObject($file);
foreach ($parts as $filename) {
$fn = trim($filename);
if (file_exists($fn)) {
echo "The file $fn exists\n";
} else {
echo "The file $fn does not exist\n";
}
}
我有一个包含 40.000 个文件路径的 txt 文件,我需要检查它们是否存在文件名。
要检查单个文件,我使用以下代码:
$filename='/home/httpd/html/domain.com/htdocs/car/002.jpg';
if (file_exists($filename)) {
echo "The file $filename exists";
} else {
echo "The file $filename does not exist";
}
该代码有效。
现在我想遍历 txt 文件,其中每行包含一个路径
/home/httpd/html/domain.com/htdocs/car/002.jpg
/home/httpd/html/domain.com/htdocs/car/003.jpg
/home/httpd/html/domain.com/htdocs/car/004.jpg
...
我尝试使用此代码遍历 txt 文件,但我得到了所有文件的 "file does not exist"。
$file = "list.txt";
$parts = new SplFileObject($file);
foreach ($parts as $filename) {
if (file_exists($filename)) { echo "The file $filename exists"; }
else { echo "The file $filename does not exist"; }
}
当您加载文件时,尝试通过 explode() 函数将字符串分解为数组。 然后您将能够使用 file_exist 函数
进行验证您的 list.txt
文件在每行末尾都有一个换行符。在 file_exists()
中使用 $filename
之前,您首先需要 trim 关闭它,例如
<?php
$file = "list.txt";
$parts = new SplFileObject($file);
foreach ($parts as $filename) {
$fn = trim($filename);
if (file_exists($fn)) {
echo "The file $fn exists\n";
} else {
echo "The file $fn does not exist\n";
}
}