1

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

在 PHP 中,我将目录字符串与文件名字符串连接起来以获取文件字符串。它工作正常,但这对我来说似乎很花哨,我想知道是否有更好的方法。是否有与内置 Java File 对象等效的 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);
}

如果您想确切地知道我想用这段代码完成什么,我将向用户显示一个 HTML 表格,其中包含来自制表符分隔文件的数据。

4

1 回答 1

3

是的,它有一个名为 SPL 的类SplFileObject,它具有处理文件内容的方法……还有它的父类SplFileInfo,它具有用于基本文件信息(mtime、路径、文件名等)的方法。还有一系列迭代器用于处理对目录/文件树等结构的迭代。

于 2013-02-19T18:26:21.787 回答