2016-09-26 86 views
1

我工作的PHP文件處理:PHP文件處理和FREAD錯誤

我有兩個問題:

在下面的功能我有這個錯誤: 警告:FREAD()預計參數1是資源,串在C中給出:\ XAMPP \ htdocs中...

,我的作用是:

function readingFile($file,$mode) { 
    if (gettype($file) !== 'string' && gettype($mode) !== 'string') { 
     return 'Pleas enter a file name and mode'; 
    } 
    fopen($file,$mode) or die ('File Not Exist!!'); 
    $size = filesize($file); 
    return fread($file,$size); 
} 
echo readingFile('file_1.txt','r'); 

1)我怎樣才能解決呢?

2)當我寫了下面的代碼,然後按回車我在第一時間拿到下一行的(假)。我平均的:

$size = filesize('file.txt'); // i press enter 
False  //here i get this word 

$file = fopen('file.txt','r'); // i press enter 
False  // here i get this word 

什麼是不正確的我的代碼?

除了我使用記事本+ +。

+0

RTFM? [FREAD()](http://php.net/fread):'參數:手柄:正在使用的fopen通常創建一個文件系統指針資源()' –

+0

你爲什麼不只是使用'的file_get_contents? – Barmar

+0

我想擁有的所有功能 – user6862524

回答

1

fread需要一個文件句柄作爲第一個參數(而不是文件名),所以你需要改變這樣的代碼:

$handle = fopen($file,$mode) or die ('File Not Exist!!'); 
$size = filesize($file); 
return fread($handle,$size); 

此外,如果你想閱讀整個文件,一個更簡單的方法是file_get_contents。上面的代碼就只是:

return file_get_contents($file); 
+0

一個很好的瞭解關於第二個問題,我發現自己回答。記事本++的Nppcalc插件會導致錯誤。 – user6862524