PHP与文件操作
我想知道是否可以将xml文件作为纯文本文件打开,这样我就可以读取每一行并处理文本PHP与文件操作,php,string,file-io,Php,String,File Io,我想知道是否可以将xml文件作为纯文本文件打开,这样我就可以读取每一行并处理文本 $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 但是,我建议使用(尽管您说希望避免),因为无法保证
$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
但是,我建议使用(尽管您说希望避免),因为无法保证xml的格式。它可以全部放在一行上,也可以在意外的地方用换行符格式化
但是,我建议使用(尽管您说希望避免),因为无法保证xml的格式。它可以在一行上,也可以在意外的地方使用换行符进行格式化。为什么不直接使用任何XML解析器/操纵器 你可以在 如果您有一个格式良好的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
为什么不直接使用任何XML解析器/操纵器呢 你可以在 如果您有一个格式良好的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
要将文件读取为字符串数组,请使用函数:
$lines = file('your_xml_file.xml');
foreach($lines as $line) {
## do the stuff for each line
}
要将文件读取为字符串数组,请使用函数:
$lines = file('your_xml_file.xml');
foreach($lines as $line) {
## do the stuff for each line
}
你为什么要这样做?你在自找麻烦。我同意其他人的观点,你应该使用xml解析器或DOMDocument,但如果你想知道答案是“是的”,那么你应该使用xml解析器或DOMDocument。XML只是一个文本文件。您可以使用
文件
、文件获取内容
、fread
或您曾经用来读取文本文件的任何东西来读取它。为什么要这样做?你在自找麻烦。我同意其他人的观点,你应该使用xml解析器或DOMDocument,但如果你想知道答案是“是的”,那么你应该使用xml解析器或DOMDocument。XML只是一个文本文件。您可以使用文件
、文件获取内容
、fread
或您曾经用来读取文本文件的任何东西来读取它。如果您可以通过文件
函数将文件作为行数组读取,为什么要按\r\n
拆分文件上下文?@Ivan-我的错。用于文件获取内容。如果可以通过文件
函数将文件读取为线数组,为什么要按\r\n
拆分文件上下文?@Ivan-我的错。我想使用simplexml\u load\u file(),但我不知道如何使用它。我最大的问题是从单个节点提取数据。我永远不知道什么时候一个对象是一个对象数组,或者它是一个对象还是对象中的一个值,所以我想我现在继续上面的例子,稍后再扩展。谢谢你的帮助。is_array()、is_object()、is_string()我想使用simplexml\u load\u file(),但我不知道如何使用它。我最大的问题是从单个节点提取数据。我永远不知道什么时候一个对象是一个对象数组,或者它是一个对象还是对象中的一个值,所以我想我现在继续上面的例子,稍后再扩展。谢谢您的帮助。is_数组()、is_对象()、is_字符串()