我使用php在xml文件中显示mysql数据。
我在这里使用这个我想给换行符。如果我们给出换行符,它会在内容中显示换行标记..我们必须给出html标签。但我们不用xml内容显示它们...
输出就是这样......
同时我想删除那些空的p标签......就是这样。
<![CDATA[ <p> </p>]]>
这是我为xml编写的代码......
请解决这个问题
header(“Content-Type:application / xml; charset = utf-8”);
date_default_timezone_set( “亚/加尔各答”);
$ this-&gt; view-&gt; data = $ this-&gt; CallModel('posts') - &gt; GalleryAndContent();
$ xml ='
“;
$ XML ='Thehansindia
http://www.thehansindia.com
报纸有所不同';
foreach($ this-&gt; view-&gt; data as $ values)
{
$输出=用strip_tags($值[ 'text_data'], “
”); $ output = preg_replace('/(&lt; [^&gt;] +)style =“。?”/ i','$ 1',$ output); $ output = preg_replace('/(&lt; [^&gt;] +)class =“。?”/ i','$ 1',$ output); $ output = preg_replace('/ style =([“\'])[^ \ 1] ?\ 1 / i','',$ output,-1); $输出= preg_replace函数( “/&≤([A-Z] [A-Z0-9] )[^&GT;] *(/)&gt;有/ I”, '',$输出); $输出= str_replace函数(阵列( “”, “”),阵列( “
”, “
”),$输出); $输出= str_replace函数(阵列( “”, “”),阵列( “”, “
”),, $输出);
//$xml.="<CONTENT>"."<![CDATA[".$output."]]>"."</CONTENT>
$xml.= '<item>';
$dom = new DOMDocument;
@$dom->loadHTML($output);
$xml.="<CONTENT>";
foreach ($dom->getElementsByTagName('p') as $tag){
//$tag->nodeValue=str_replace("<![CDATA[ <p> </p> ]]>","",$tag->nodeValue);
if(!empty($tag->nodeValue)){
//$tag->nodeValue=str_replace("<![CDATA[ <p>& & &</p> ]]>","",$tag->nodeValue);
$xml.="<![CDATA["."<p>".stripslashes($tag->nodeValue)."</p>"."]]>";
}
}
$xml.="</CONTENT>";
$xml.= ' </item>';
}
答案 0 :(得分:0)
示例:
//Next replace all new lines with the unicode:
$xml = str_replace("\n"," ", $xml);