天天看點

php fopen 和file_get_contents 的差別

Cookie禁用了,Session還能用嗎?原因詳解

fopen

一般fopen函數讀取檔案需要配合使用fgets和fclose函數。

代碼示例:

<?php

$fileName = "text.txt";

$fp = fopen($file_name, 'r'); //

$contents=fgets($fp);
echo $contents;

fclose($fp);

?>
           

file_get_contents

一般fopen函數讀取檔案需要配合使用fgets和fclose函數。

代碼示例:

<?php

$path = "http://www.baidu.com";

$contents = file_get_contents($path);

echo $contents; //輸入檔案内容

?>
           

一般情況下兩個函數都可以使用,下面說說差別!

fopen() 打開檔案一般是打開一個句柄 要配合 fgets()來擷取讀出内容且每次讀取一行内容 讀完後要使用fclose()關閉

file_get_contents() 一次行都去全部内容,有時候會因為内容過大導緻PHP占據大量記憶體

總結:

通過分析可以看出 file_get_contents使用比較簡單,适用于大多數内容不是很大的情況,fopen() 使用複雜但是在内容比較大時比較适合