我有一個文件。但現在需要將這個文件讀入一個字節數組中。在java或C++中,這很容易實現。但沒有找到我如何在PHP中閱讀。將文件讀入字節數組(PHP)
6
A
回答
10
您可以讀取該文件到像這樣的字符串:
$data = file_get_contents("/tmp/some_file.txt");
您可以在類似於單個字節獲得如何在C會:
for($i = 0; $i < strlen($data); ++$i) {
$char = $data[$i];
echo "Byte $i: $char\n";
}
參考文獻:
2
可以讀取任何fread()
或file_get_contents()
文件,然後用str_split()
把它分解:
$MyArray = str_split($file);
4
見PHP Manual on String access and modification by character
字符中字符串s,可以訪問和修改在使用方形數組括號的字符串之後指定所需字符的從零開始的偏移量,如
$str[42]
中所示。出於此目的,可以將字符串視爲一組字符。當您想要提取或替換多於一個字符時,可以使用功能substr()
和substr_replace()
。
或者,如果你正在尋求從文件中讀取字節後,您可以使用一個SplFileObject
$file = new SplFileObject('file.txt');
while (false !== ($char = $file->fgetc())) {
echo "$char\n";
}
這不是一個字節數組,雖然,但遍歷文件句柄。 SplFileInfo實現了SeekableIterator接口。
而且在阿里納斯,還有
- file - 返回文件中的數組。數組中的每個元素都對應於文件中的一行,並且還附加了換行符。失敗時,file()返回FALSE。
2
太多PHP>
$data = file_get_contents("/tmp/some_file.txt");
最好使的方式(不推薦在使用計數,的sizeof,strlen的或其他功能): $counter = strlen($data); for($i = 0; $i < $counter; ++$i) { $char = data[$i]; echo "Byte $i: $char\n"; }
相關問題
- 1. 讀取字節數組與將字節數組寫入文件
- 2. 將字節數組寫入txt文件並將其讀回
- 3. 已更新:將文本文件讀入字節數組
- 4. PHP將文件讀入數組
- 5. 將字節數組寫入文件夾
- 6. 難以將大文件讀入字節數組
- 7. 如何將二進制文件讀入字節數組?
- 8. 將整個文件讀入一個字節數組中的WinForms
- 9. 將文件讀入字節數組時出現System.ArgumentException
- 10. 如何將資源文件讀入scala中的字節數組?
- 11. 將Http請求讀入字節數組
- 12. 將內存流讀入字節數組
- 13. 將字節數組讀入位圖
- 14. 將文件讀取到字節數組時的冗餘字節
- 15. 將文件讀入數組
- 16. 將文件讀入數組
- 17. 將文件讀入數組
- 18. 將文件讀入4字節的ByteArrays
- 19. 作爲字節數組讀取文件
- 20. 讀取字節數組多個文件
- 21. 將字節數組(從讀取文件)轉換爲字符串
- 22. Java apache IOUtils:如何在將文件讀入字節數組後將其刪除?
- 23. 將字節插入到字節數組
- 24. 將文本文件讀入字符串數組(並寫入)
- 25. 將文本文件讀入數組
- 26. 將文本文件讀入numpy數組
- 27. 將文本文件讀入數組
- 28. 將文本文件讀入數組
- 29. 將文本文件讀入數組?
- 30. 將文本文件讀入Java數組
我覺得這是一個錯字。它必須是: '$ char = $ data [$ i];' – 2012-07-12 11:43:29