我想知道是否可以打開一個純文本文件的XML文件,所以我可以閱讀每一行和操縱文本?PHP和文件操作
PHP和文件操作
回答
$xml_file = '/var/www/file.xml';
$contents = file_get_contents($xml_file); // Dumps the entire file into a single string
$contents = file($xml_file); // Dumps each line into an array
不過,我會建議使用simplexml_load_file()
(即使你說你想避免的話),因爲沒有擔保,以XML將如何被格式化。它可以全部在一行上,或在意想不到的地方用換行符格式化。
我想使用simplexml_load_file(),但我無法弄清楚如何使用它。我最大的問題是從單個節點提取數據。我永遠無法知道對象何時是對象數組,或者對象是對象還是對象中的值,所以我認爲我會堅持使用上面的示例,稍後再分支。謝謝你的幫助。 – cskwrd 2009-10-28 00:30:19
is_array(),is_object(),is_string() – 2009-10-28 01:34:39
爲什麼不直接使用任何XML解析器/操縱器?
你可以找到http://www.php.net/manual/en/refs.xml.php
那些引用如果你有那麼一個很好的格式化XML文件,
$file = 'file.xml';
// get contents and normalize the newline
$xml_arr = file($file);
foreach($xml_arr as &$line){
// do your manipulation to $line
}
$ctns = implode("\n",$xml_arr);
file_put_contents($file,$ctns); // write back
如果可以通過'file'函數將文件作爲線陣列讀取,爲什麼要用'\ r \ n'分割文件上下文? – 2009-10-27 23:00:44
@伊萬 - 我的不好。用於file_get_contents。 – mauris 2009-10-27 23:02:18
讀取文件作爲字符串數組使用file
功能:
$lines = file('your_xml_file.xml');
foreach($lines as $line) {
## do the stuff for each line
}
- 1. PHP文件操作
- 2. 基本PHP文件操作
- 3. 文件修改和操作
- 4. 文件夾和文件操作
- 5. 使用PHP中的zip文件操作
- 6. 文件操作
- 7. 文件操作
- 8. 操作文件
- 9. 文件操作
- 10. PHP文件包含和它的操控
- 11. 捲曲操作和PHP
- 12. PHP,Jquery和DOM操作
- 13. php從文件讀取和操作數據
- 14. 跨操作系統的PHP和文件屬性
- 15. 在同一個PHP文件中執行INSERT和SELECT操作
- 16. EXT3文件操作
- 17. Python。文件操作
- 18. Java文件操作
- 19. C++文件操作
- 20. Prolog,文件操作
- 21. Excel文件操作
- 22. 操作文件 - bash
- 23. Mp3文件操作
- 24. Android文件操作
- 25. 文件操作庫
- 26. 操作MFCC文件
- 27. C++中的類和文件操作
- 28. 使用malloc和POSIX文件操作
- 29. Oozie shell操作:exec和文件標籤
- 30. XML文件解釋和操作
爲什麼你想這樣做嗎?你正在尋求麻煩。所有冗長的xml都沒有語義上的好處。 – 2009-10-27 22:59:21
我同意其他人的觀點,你應該使用XML解析器或DOMDocument,但如果你想知道答案是'是'。 XML只是一個文本文件。你可以用'file','file_get_contents','fread'或者你曾經用來讀取文本文件的方式讀取它。 – NawaMan 2009-10-27 23:11:57