Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 读取目录中的所有文件并处理文件字符串的最佳实践_Php_String_File_Directory - Fatal编程技术网

Php 读取目录中的所有文件并处理文件字符串的最佳实践

Php 读取目录中的所有文件并处理文件字符串的最佳实践,php,string,file,directory,Php,String,File,Directory,在Java中,我可以使用File对象来引用文件的父文件、列出子文件和其他有用的函数(方法)。这些方法可以返回文件对象,因此我不需要处理文件的字符串。相反,我可以只管理对象。这使事情变得漂亮整洁,不容易出现我的打字错误 在PHP中,我将目录字符串与文件名字符串连接起来以获得文件字符串。它工作得很好,但对我来说这似乎是个噱头,我想知道是否有更好的方法。是否存在与内置Java文件对象等效的PHP 以下是我读取目录中所有文件并逐行打印其内容的代码: $reportDir = realpath(RESOU

在Java中,我可以使用File对象来引用文件的父文件、列出子文件和其他有用的函数(方法)。这些方法可以返回文件对象,因此我不需要处理文件的字符串。相反,我可以只管理对象。这使事情变得漂亮整洁,不容易出现我的打字错误

在PHP中,我将目录字符串与文件名字符串连接起来以获得文件字符串。它工作得很好,但对我来说这似乎是个噱头,我想知道是否有更好的方法。是否存在与内置Java文件对象等效的PHP

以下是我读取目录中所有文件并逐行打印其内容的代码:

$reportDir = realpath(RESOURCE_PATH . "/userFiles/uploadedReports");
if ($dirHandle = opendir($reportDir)) {
    while (false !== ($entry = readdir($dirHandle))) {
        if ($entry != "." && $entry != ".."){
            $fileString = $reportDir . "/" . $entry;
            $fileHandle = fopen($fileString, "r");
            while (!feof($fileHandle) ) {
               $line = fgets($fileHandle);
               echo $line . "<br />";
            }
            fclose($fileHandle);
            $i++;
        }
    }
    closedir($dirHandle);
}
$reportDir=realpath(资源路径“/userFiles/uploadedReports”);
如果($dirHandle=opendir($reportDir)){
while(false!=($entry=readdir($dirHandle))){
如果($entry!=“&&&$entry!=”){
$fileString=$reportDir.“/”$entry;
$fileHandle=fopen($fileString,“r”);
而(!feof($fileHandle)){
$line=fgets($fileHandle);
echo$行“
”; } fclose($fileHandle); $i++; } } closedir($dirHandle); }

如果您想确切地知道我试图用这段代码实现什么,我将向用户显示一个HTML表,其中包含以制表符分隔的文件中的数据

是的,有一个名为SPL的类,它有处理文件内容的方法。。。还有它的父级,它有用于基本文件信息(mtime、路径、文件名等)的方法。还有一种方法可以处理目录/文件树等结构的迭代。

SPL在我看来绝对是“最佳实践”。谢谢!我现在正在调查这件事。