『壹』 如何使用php讀取文本文件內容
利用PHP讀取文本文件的內容,其實很簡單,我們只需要掌握函數「file_get_contents();」的使用就可以了。下面,小編將作詳細的介紹。
工具/原料
電腦一台
WAMP開發環境
方法/步驟
file_get_content()函數介紹。使用file_get_contents()獲取txt文件的內容,具體參數說明如下:
2
具體實例說明。從文本文件tst.txt中讀取裡面的內容並顯示在瀏覽器中,具體代碼和圖示如下:
<?php
$file = 'tst.txt';
$content = file_get_contents($file); //讀取文件中的內容
echo $content;
?>
『貳』 PHP如何實現讀取指定文件內的某些內容
這個文件,如果是用php 語法寫的,你可以用include();將此文件包含進來,
這樣的話,這里文件裡面$index="132233123";
你就可以調用$index變數了
如果你寫的只是一個文件話,建議你用以下方式進行判斷
這個下面是我寫的一個讀取文件的函數,
function Read_Url($file_url){
$str="";
$handle = @fopen($file_url, "r");
if ($handle) {
while (!feof($handle)) {
$buffer = fgets($handle, 4096);
$str .= $buffer." ";
}
return $str;
fclose($handle);
}else{
Msg("文件無法打開");
}
}
『叄』 關於PHP讀寫文件
相關
php函數
:
fopen()打開文件。
格式如:fopen("文件路徑","r")。
fopen()函數有參數第一個參數要指明文件,第二個參數可以是r,w等,讀文件時就可以是r,寫文件時可以是w。
fwrite()和
fputs()寫文件。
fclose()
關閉文件
。
fgets()讀取記錄。最常用的是以上這些函數。
『肆』 php 使用file_get_contents讀取大文件的方法
當我們遇到文本文件體積很大時,比如超過幾十M甚至幾百M幾G的大文件,用記事本或者其它編輯器打開往往不能成功,因為他們都需要把文件內容全部放到內存裡面,這時就會發生內存溢出而打開錯誤,遇到這種情況我們可以使用PHP的文件讀取函數file_get_contents()進行分段讀取。
函數說明
string
file_get_contents
(
string
$filename
[,
bool
$use_include_path
[,
resource
$context
[,
int
$offset
[,
int
$maxlen
]]]]
)
和
file()
一樣,只除了
file_get_contents()
把文件讀入一個字元串。將在參數
offset
所指定的位置開始讀取長度為
maxlen
的內容。如果失敗,file_get_contents()
將返回
FALSE。
file_get_contents()
函數是用來將文件的內容讀入到一個字元串中的首選方法。如果操作系統支持還會使用內存映射技術來增強性能。
應用:
復制代碼
代碼如下:
$str
=
$content=file_get_contents("2.sql",FALSE,NULL,1024*1024,1024);
echo
$str;
如果針對較小文件只是希望分段讀取並以此讀完可以使用fread()函數
復制代碼
代碼如下:
$fp=fopen('2.sql','r');
while
(!feof($fp)){
$str.=fread($fp,
filesize
($filename)/10);//每次讀出文件10分之1
//進行處理
}
echo
$str;
『伍』 如何運用PHP函數fgets讀取指針文件
PHP函數fgets就是其中一個功能強大的函數。 PHP函數fgets -- 從文件指針中讀取一行說明 string fgets ( int handle [, int length] ) 從 handle 指向的文件中讀取一行並返回長度最多為 length - 1 位元組的字元串。碰到換行符(包括在返回值中)、EOF 或者已經讀取了 length - 1 位元組後停止(看先碰到那一種情況)。如果沒有指定 length,則默認為 1K,或者說 1024 位元組。 出錯時返回 FALSE。 PHP函數fgets通常的缺陷: 文件指針必須是有效的,並且必須指向一個由 fopen() 或 fsockopen() 成功打開的文件。 以下是一個PHP函數fgets簡單例子: 例子 1. 逐行讀取文件<?php$handle=fopen(/tmp/inputfile.txt,r); while(!feof($handle)){$buffer=fgets($fd,4096); 注: length 參數從 PHP 4.2.0 起成為可選項,如果忽略,則行的長度被假定為 1024。從 PHP 4.3 開始源碼天空 ,忽略掉 length 將繼續從流中讀取數據直到行結束。如果文件中的大多數行都大於 8KB,則在腳本中指定最大行的長度在利用資源上更為有效。 注: 從 PHP 4.3 開始本函數可以安全用於二進制文件。早期的版本則不行。
『陸』 php如何讀取某目錄下的所有同類型文件
PHP的glob() 函數返回匹配指定模式的文件名或目錄。
該函數返回一個包含有匹配文件 / 目錄的數組。如果出錯返回 false。
語法
glob(pattern,flags)
參數
描述
file
必需。規定檢索模式。
size
可選。規定特殊的設定。
GLOB_MARK - 在每個返回的項目中加一個斜線
GLOB_NOSORT - 按照文件在目錄中出現的原始順序返回(不排序)
GLOB_NOCHECK - 如果沒有文件匹配則返回用於搜索的模式
GLOB_NOESCAPE - 反斜線不轉義元字元
GLOB_BRACE - 擴充 {a,b,c} 來匹配 'a','b' 或 'c'
GLOB_ONLYDIR - 僅返回與模式匹配的目錄項
GLOB_ERR - 停止並讀取錯誤信息(比如說不可讀的目錄),默認的情況下忽略所有錯誤
注釋:GLOB_ERR 是 PHP 5.1 添加的。
例子 1
<?php
$a=glob("*.txt");
print_r(count($a));
?>
『柒』 求解,如何建立一個php函數,來讀取文件如:
test.txt文件里的內容為:
(name-abc)(age-30)(height-180)(weight-150)
(name-cba)(age-40)(height-190)(weight-180)
你可以根據自己需要修改下transform函數,例如不是直接echo輸出,而是存到另一個文件里。
<?php
function transform($file) {
$fp = fopen($file, "r");
while (!feof($fp)) {
$line = fgets($fp);
if (preg_match_all("/.*?-(.*?)\)/", $line, $matches)) {
$wants = $matches[1];
$ret = implode(",", $wants);
echo $ret."\n";
}
}
}
$myfile = "test.txt";
transform($myfile);
?>
『捌』 php 讀取文件 哪個函數快
效率的話一般瓶頸不會是在程序上,除非寫的死操作和大冗餘。
看你讀文件就一行一行讀,fgets函數要好點。本身就是用來讀一行的。
『玖』 php有哪些函數可以遠程讀取文件
php讀取遠程文件的方式很多,常用的函數有file_put_contents,fopen,也可以使用curl的方式讀取。具體用法參考php手冊。
『拾』 php中file_get_contents()函數用法實例
我們先來看一下php中的
file_get_contents()函數的語法
string
file_get_contents(string
$
filename,bool
$
include_path
=
false,resource
$
context,int
$
offset
=
0,int
$
maxlen)
filename是文件或URL的名稱。
include_path如果啟用,則在include_path中搜索文件
context這是用於修改流的行為的選項集
offset此值指定要讀取的文件的起始位置。
maxlen此值指定要讀取的位元組數。
將文件內容讀取為字元串
這個php示例將從文件中讀取內容並存儲到字元串變數中。
<?php
$
content
=
file_get_contents(「input.txt」);
echo
$
content;
?>
將內容從URL讀取到字元串
<?php
$content
=
file_get_contents("http://example.com");
echo
$content;
?>
以上就是關於php中file_get_contents()函數的相關知識點,感謝大家的閱讀和對腳本之家的支持。
您可能感興趣的文章:PHP
fopen()和
file_get_contents()應用與差異介紹