为什么我的文件size()方法不起作用?

时间:2011-04-14 18:08:45

标签: php fopen filesize fread

为什么我的filesize()方法不起作用?我的路径适用于fread()file()方法,但它不会确认filesize()上的路径。为什么不?我的正确道路应该是什么?

<?php     
    $strLessonDescription = fopen("http://nova.umuc.edu/~ct386a28/lovej2ee/exercise5/content/lesson5.txt", "r") 
                            or die ("Error - lesson5.txt cannot be opened");
    $lessonDescription = fread($strLessonDescription, 
                               filesize("http://nova.umuc.edu/~ct386a28/lovej2ee/exercise5/content/vocabulary5.txt"));
    fclose($strLessonDescription);

    echo $lessonDescription;        
    $arrLessonVocabulary = array();
    $arrLessonVocabulary = file("http://nova.umuc.edu/~ct386a28/lovej2ee/exercise5/content/vocabulary5.txt");

    if (arrLessonVocabulary == NULL)
        print "Error - vocabulary5.txt cannot be opened";
?>

1 个答案:

答案 0 :(得分:5)

由于您尝试读取的文件是通过远程请求而不是本地文件读取的,因此它会显着改变您希望读取该数据的方式。根据{{​​3}},您需要以块的形式读取文件。或者,尝试使用fread() manual page来简化您的代码:

$lessonDescription = file_get_contents('http://nova.umuc.edu/~ct386a28/lovej2ee/exercise5/content/vocabulary5.txt');
echo $lessonDescription;