php 檔案讀取與讀取檔案輸出內容例子

來源:互聯網
上載者:User

一,讀取檔案

先解釋一下,什麼是讀取檔案本身,什麼叫讀取檔案輸入內容。舉個例子test.php裡面的內容<?php  echo "test"; ?>

1,讀取檔案本身就是讀取檔案內所有內容,讀取後就能得到<?php  echo "test"; ?>
2,讀取檔案輸出內容是讀取檔案所表現出來的東西,讀取後得到test

二,fopen方法

1,讀取檔案本身
 
<?php 
$filename = "test.php"; 
$handle = fopen($filename, "r"); 
$contents = fread($handle, filesize ($filename)); 
fclose($handle); 
echo strlen($contents); 
?> 

2,讀取檔案輸出內容
 
<?php 
$filename = "http://localhost/test/test.php"; 
$handle = fopen($filename, "r"); 
$contents = ""; 
while (!feof($handle)) { 
 $contents .= fread($handle, 8192); 

fclose($handle); 
echo strlen($contents); 
?> 

上面二個讀取的檔案是同一個,但是為什麼會不一樣呢,http://localhost/test/test.php,在這裡test.php檔案被解釋了,fopen只是得到這個指令碼所輸入的內容,看看php官方網站的解釋吧
fopen() 將 filename 指定的名字資源綁定到一個流上。如果 filename 是 "scheme://..." 的格式,則被當成一個 URL,PHP 將搜尋協議處理器(也被稱為封裝協議)來處理此模式。如果該協議尚未註冊封裝協議,PHP 將發出一條訊息來協助檢查指令碼中潛在的問題並將 filename 當成一個普通的檔案名稱繼續執行下去。

三,file方法

1,讀取檔案本身
 
<?php 
$filename = "test.php"; 
$content = file($filename);                 //得到數組 
print_r($content); 
?> 
2,讀取檔案顯示輸出內容
<?php
$filename = "http://localhost/test/test.php";
$content = file($filename);
print_r($content);
?>

四,file_get_contents方法

1,讀取檔案本身
 
<?php 
$filename = "test.php"; 
$content = file_get_contents($filename);     //得到字串 
echo strlen($content); 
?> 
2,讀取檔案顯示輸出內容
<?php
$filename = "http://localhost/test/test.php";
$content = file_get_contents($filename);
echo strlen($content);
?>

五,readfile方法

1,讀取檔案本身
 
<?php 
$filename = "test.php"; 
$num = readfile($filename);     //返回位元組數 
echo $num; 
?> 
2,讀取檔案顯示輸出內容
 
<?php 
$filename = "http://localhost/test/test.php"; 
$num = readfile($filename);     //返回位元組數 
echo $num; 
?> 

六,ob_get_contents方法

1,讀取檔案顯示輸出內容
 
<?php 
ob_start(); 
require_once('bbb.php'); 
$content = ob_get_contents(); 
ob_end_clean(); 
echo strlen($content); 
?> 

總結

php,讀取檔案的方法很多,讀取url的方法也很多,個人總結了一下,如有不對請大家指正,如果有不足請大家補充。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.