我想知道如何在使用fgets()
時讀取它時跳過文本文件的第一行和最後一行。第一行可以用if(!$firstLine)
來解決,但我不知道如何忽略最後一行,或者如果我忽略第一行的解決方案是最佳選擇。PHP,使用fgets跳過文本文件的第一行和最後一行
回答
fgets($file); //Ignore the first line
$line = fgets($file);
$next = fgets($file);
while ($next !== false) { //check the line after the one you will process next.
//This way, when $next is false, then you still have one line left you could process, the last line.
//Do Stuff
$line = $next;
$next = fgets($file);
}
不幸的是,文件()打開文件到「串行」流(不知道是否序列是正確的話),這意味着你必須檢測他的結局
它確實是它的一個流,但是你不知道文件的結尾在哪裏,而且你必須讀整個文件。 '$ fp = fopen($ path,'r'); fseek($ fp,-16); $ end = fgets($ fp);'應該返回最後16個字節的文件(如果它至少有16個字節),而不讀取整個內容。 – lupatus
第二件事情是,'file'函數不是以流的形式打開文件 - 它會爲您讀取其內容並返回爲線陣列。 – lupatus
我的回答是與問題有關,我沒有說,沒有辦法在文件末尾獲取字符,但沒有辦法在沒有讀取文件的情況下跳過最後一行。如果您將查看最後16個字節,那麼將不會跳過最後一個字節...,因此您必須讀取完整文件,然後跳過最後一行。或者有其他方法? – jorj
$lines = file('http://www.example.com/');//or local file
unset($lines[0]);
unset($lines[count($lines)-1)]);
$new_file = implode('', $lines); //may want to use line break "\n" for the join
嘗試之前閱讀完整的文件這
$str= file_get_contents("file.txt");
$arr = preg_split ("\n",$str);
$n = count($arr);
$ n是行數
$str="";
for($i=0;$i<$n;$i++){
if($i>0 && $i<($n-1)){ $str.=$arr[$i]}
}
/**Str without line 1 and final line */
您可能想嘗試分解文件內容。它會幫助你很多!之後你會標註它。
- 1. 如何通過跳過文件中的第一行和最後一行來讀取文本文件
- 2. 跳過文件的最後一行perl
- 3. 顯示文本文件的第一行和最後一行?
- 4. C++跳過csv文件的第一行
- 5. r導入csv跳過第一行和最後一行
- 6. 使用豬腳本刪除文件的第一行和最後一行
- 7. 僅匹配第一行和最後一行的文本?
- 8. VBA - 查找重複文本的第一行和最後一行
- 9. 如何搜索文本文件的第一行和最後一行?
- 10. 讀取文件中的第一行和最後一行
- 11. C++跳轉/循環到文本文件的最後一行
- 12. 如何從文本文件中刪除第一行和最後一行c#?
- 13. 從文本文件中讀取第5行最後一行
- 14. fgets()PHP讀取最後一行?
- 15. 將文本文件加載到MySQL上 - 跳過第一行
- 16. 從文件中刪除第一行和最後一行
- 17. python錯誤地跳過列表中最後一個文件的最後一行
- 18. 使用CSV文件跳過循環中的第一行(字段)?
- 19. FileHelpers:如何跳過第一行和最後一行讀取固定寬度的文本
- 20. fgets跳過空行
- 21. 當我使用BULK INSERT時,如何跳過第2行和最後一行
- 22. 解析文本文件一行行,跳過某些行
- 23. 如何讀取最後一行在C#中的文本文件,第一行
- 24. 2與fgets一前一後,第一個被後第一時間跳過
- 25. 如何使用fgets()從文件中拉出一行文本?
- 26. 在Python中迭代時跳過CSV文件的最後一行
- 27. numpy.genfromtxt跳過/忽略長tsv文件中的最後一行
- 28. C fgets() - 只有文件的最後一行寫入數組?
- 29. PHP顯示CSV文件,跳過第一行
- 30. 閱讀CSV文件到數組並跳過第一行PHP
file()將每行放入一個數組中,使您想要的操作變得簡單。 – 2012-11-30 00:12:00