php用xml跳线

时间:2017-10-03 21:05:02

标签: php xml

我想用php创建xml文件......

我怎么跳线?用br或\ n?

我每次都试试。

任何人都可以帮助我吗?

include "ayar.php";
$myFile = "rss.xml";
$fh = fopen($myFile, 'w') or die("can't open file");



$rss_txt .= '<?xml version="1.0"?>';
$rss_txt .= '<rss xmlns:g="http://base.google.com/ns/1.0" version="2.0">';
$rss_txt .= '<channel>';

 while($values_query = mysql_fetch_assoc($query))
 {
        $rss_txt .= '<item>';
        $rss_txt .= '<g:title>' .$values_query['baslik']. '</g:title><br />';
        $rss_txt .= '<g:description>' .$values_query['aciklama']. '</g:description><br />';
        $rss_txt .= '<g:link>' .$values_query['resim1k']. '</g:link><br />';
        $rss_txt .= '<g:image_link>' .$values_query['resim1k']. '</g:image_link><br />';    
        $rss_txt .= '</item>';

 }
$rss_txt .= '</channel>';
$rss_txt .= '</rss>';

fwrite($fh, $rss_txt);
fclose($fh);

2 个答案:

答案 0 :(得分:0)

HTML换行序列绝对不对。我相信你需要使用&#39;回车&#39; (CR)可以在你的字符串中写成\ r

答案 1 :(得分:0)

当RockwoodON确实正确陈述时,<br />不是这里的方式。 <br />是用于呈现换行符的HTML呈现器的标记。要格式化XML,您将需要换行符/字符串,遗憾的是这些字符串不是独立于平台的。

Every platform has its line breaks

  • Windows hat Carriage Return plus换行("\r\n"
  • * nix(不包括macOS)只有一个换行符"\n"
  • macOS有一个回车"\r"

话虽如此,大多数现代编辑可能会认识到其中的几个/所有选项。记事本++,VS也是,只提两个。因此,换行符的选择应分别取决于您的目标系统/编辑器或用例。

如果运行代码的系统与目标平台相同,则可以使用PHP_EOL(请参阅here),但只有在不切换任何一方的平台时它才有用。 你应该考虑定义自己的常量,以保持与文件的一致性

define('EOL',   '\r\n');

// ...

$rss_txt .= '<item>';
$rss_txt .= '<g:title>' .$values_query['baslik']. '</g:title>'.EOL;
$rss_txt .= '<g:description>' .$values_query['aciklama']. '</g:description>'.EOL;
$rss_txt .= '<g:link>' .$values_query['resim1k']. '</g:link>'.EOL;
$rss_txt .= '<g:image_link>' .$values_query['resim1k']. '</g:image_link>'.EOL;    
$rss_txt .= '</item>';