日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國(guó)內(nèi)最全I(xiàn)T社區(qū)平臺(tái) 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當(dāng)前位置:首頁 > php開源 > php教程 > php feof函數(shù)用法與注意事項(xiàng)

php feof函數(shù)用法與注意事項(xiàng)

來源:程序員人生   發(fā)布時(shí)間:2013-10-11 19:45:52 閱讀次數(shù):2740次

eof() 函數(shù)檢測(cè)是否已到達(dá)文件末尾(eof).

如果文件指針到了 EOF 或者出錯(cuò)時(shí)則返回 TRUE,否則返回一個(gè)錯(cuò)誤(包括 socket 超時(shí)),其它情況則返回 FALSE.

語法:feof(file)

參數(shù) 描述

file 必需,規(guī)定要檢查的打開文件.

說明:file 參數(shù)是一個(gè)文件指針,這個(gè)文件指針必須有效,并且必須指向一個(gè)由 fopen() 或 fsockopen() 成功打開(但還沒有被 fclose() 關(guān)閉)的文件.

  1. <?php 
  2. $file = fopen("test.txt""r"); 
  3.  
  4. //輸出文本中所有的行,直到文件結(jié)束為止。 
  5. while(! feof($file)) 
  6.   { 
  7.   echo fgets($file). "<br />"
  8.   } 
  9.  
  10. fclose($file); 
  11. ?> 
  12.  
  13. if(file_exists($pmr_config["datasetfile"])){ 
  14.  $tmp_counter = 0; 
  15.  $hd = fopen($pmr_config["datasetfile"], "r"); 
  16.  if($hd !== FALSE){ 
  17.   while (!feof($hd)) { 
  18.    $buffer = fgets($hd); 
  19.                         if($tmp_counter >= $seq){ 
  20.     $result[] = $buffer
  21.    } 
  22.                 $tmp_counter++; 
  23.  
  24.                 if($tmp_counter >=$seq + $size){ 
  25.                     break
  26.                 } 
  27.  } 
  28.  }else
  29.   echo "warning:open file {$pmr_config["datasetfile"]} failed!PHP_EOL"
  30.  } 
  31. }else
  32.  echo "warning:file {$pmr_config["datasetfile"]} does not exsits!PHP_EOL"

其中當(dāng)讀取行數(shù)包括文件結(jié)尾的時(shí)候,$result數(shù)組中總會(huì)比期望的內(nèi)容多出來一個(gè)元素:

(boolean)false

按說,如果讀取到最后一行,feof函數(shù)會(huì)返回TRUE,然后while循環(huán)就退出了,為什么不是呢?

1

while (!feof($hd)) {

事情原來是這樣子的:

  1. <?php 
  2. // if file can not be read or doesn't exist fopen function returns FALSE 
  3. $file = @fopen("no_such_file""r"); 
  4.  
  5. // FALSE from fopen will issue warning and result in infinite loop here 
  6. while (!feof($file)) { 
  7.  
  8. fclose($file); 
  9. ?> 

feof() is, in fact, reliable.  However, you have to use it carefully in conjunction with fgets().  A common (but incorrect) approach is to try something like this:

  1. <? 
  2. $fp = fopen("myfile.txt""r"); 
  3. while (!feof($fp)) { 
  4.   $current_line = fgets($fp); 
  5.   // do stuff to the current line here 
  6. fclose($fp); 
  7. ?> 

提示和注釋:

提示:feof() 函數(shù)對(duì)遍歷長(zhǎng)度未知的數(shù)據(jù)很有用。

注意:如果服務(wù)器沒有關(guān)閉由 fsockopen() 所打開的連接,feof() 會(huì)一直等待直到超時(shí)而返回 TRUE,默認(rèn)的超時(shí)限制是 60 秒,可以使用 stream_set_timeout() 來改變這個(gè)值.

注意:如果傳遞的文件指針無效可能會(huì)陷入無限循環(huán)中,因?yàn)?EOF 不會(huì)返回 TRUE.

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關(guān)閉
程序員人生
主站蜘蛛池模板: 国产成人精品在线观看 | 久久夜靖品 | 999久久久久久久久6666 | 欧美天堂在线观看 | 国产一区二区三区免费观看视频 | www久 | 欧美成人精品一区 | 天堂网2021 | 亚洲精品福利在线 | 欧美视频网址 | 国产一区二区三区四 | 国产剧情一区二区 | 天堂色综合| 国产伦精品一区二区三区免费 | а天堂中文最新一区二区三区 | 在线日韩欧美 | 国产一区在线播放 | 国产天堂在线 | 天堂在线中文 | 久久黄网| 精品久久久久久久久久久下田 | 国产精品久久久久久久久久久久久久久 | 国产精品爽爽久久久久久 | 日韩中文字幕在线播放 | 国产精品自拍系列 | 久久久亚洲 | 久久aⅴ乱码一区二区三区 青青草国产成人av片免费 | 成人免费高清视频 | 日韩精品一区二区三区在线播放 | 午夜精品福利一区二区三区蜜桃 | 国产精品成av人在线视午夜片 | 综合欧美一区二区三区 | 黄色片视频在线观看 | 亚洲福利视频一区 | 6080yy精品一区二区三区 | 日韩a级毛片免费观看久久 精品一区二区在线播放 | 色婷丁香 | 不用播放器看av | 日韩欧乱色一区二区三区在线 | 日韩欧美一级 | 黄a视频在线观看 |