国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP移動文件指針ftell()、fseek()、rewind()函數總結

2024-09-04 11:43:04
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了PHP移動文件指針ftell()、fseek()、rewind()函數總結,本文先是對它們的作用做了講解,然后給出具體使用例子,需要的朋友可以參考下

在對文件進行讀寫過程中,有時需要在文件中跳轉、同不同位置讀取,以及將數據寫入到不同的位置。例如,使用文件模擬數據庫保存數據,就需要移動文件指針。指針的位置是以從文件頭開始的字節數度量的,默認以不同模式打開文件時,文件指針通常在文件的開頭或是結尾處,可以通過ftell()、fseek()和rewind()三個函數對文件指針進行操作,它們的原型如下所示:

int ftell(resource handle)         //返回文件指針的當前位置

int fseek(resource hanlde,int offset[,int whence])          //移動文件指針到指定位置

bool rewind(resource handle)          //移動文件指針到文件的開頭

使用這些函數時,必須提供一個用fopen()函數打開的、合法的文件指針。函數ftell()獲取由指定的資源中的文件指針當前位置的偏移量;函數rewind()將文件指針移回到指定資源的開頭;而函數fseek()函數則將指針移動到第二個參數offset指定的位置,如果沒有提供第三個可選參數whence,則位置將設置為從文件開頭的offset字節處。否則,第三個參數whence可以設置為三個可能的值,它將影響指針的位置。

★SEEK_CUR:設置指針位置為當前位置加上第二個參數所提供的offset字節。

★SEEK_END:設置指針位置為EOF加上offset字節。在這里,offset必須設置為負值。

★SEEK_SET:設置指針位置為offset字節處。這與忽略第三個參數whence效果相同。

如果fseek()函數執行成功,將返回0,失敗則返回-1.如果將文件以追加模式“a”或“a+”打開,寫入文件的任何數據是會被附加在后面,不會管文件指針的位置。代碼如下所示:

  1. <?php 
  2. $fp = fopen('data.txt' ,'r')or die("文件打開失敗"); 
  3.  
  4. echo ftell($fp)."<br>";         //輸出剛打開文件的指針默認位置,指針在文件的開頭位置為0 
  5. echo fread($fp, 10)."<br>";        //讀取文件中的前10個字符輸出,指針位置發生了變化 
  6. echo ftell($fp)."<br>";           //讀取文件的前10個字符之后,指針移動的位置在第10個字節處 
  7.  
  8. fseek($fp, 100,SEEK_CUR);       //又將指針移動到倒數10個字節位置處 
  9. echo ftell($fp); //文件的位置在110個字節處 
  10. echo fread($fp,10)."<br>";     //讀取110到120字節數位置的字符串,讀取后指針的位置為120 
  11.  
  12. fseek($fp,-10,SEEK_END);         //又將指針移動到倒數10個字節位置處 
  13. echo fread($fp, 10)."<br>";        //輸出文件中最后10個字符 
  14.  
  15. rewind($fp);          //又移動文件指針到文件的開頭 
  16. echo ftell($fp);           //指針在文件的開頭位置,輸出0 
  17. //www.survivalescaperooms.com 
  18. fclose($fp); 
  19. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 高密市| 徐闻县| 佛学| 山丹县| 邓州市| 玛沁县| 阳信县| 平乐县| 竹北市| 鲁甸县| 孟州市| 海淀区| 左权县| 得荣县| 阿拉善左旗| 马山县| 宁城县| 阳朔县| 北海市| 桃源县| 博客| 海阳市| 霍林郭勒市| 岐山县| 吉林省| 刚察县| 象州县| 札达县| 镇康县| 公主岭市| 徐汇区| 崇明县| 新兴县| 康平县| 南召县| 天峨县| 湛江市| 吉首市| 聊城市| 兴安县| 樟树市|