首页 / XML / 使用PHP构建XML – 考虑性能
使用PHP构建XML – 考虑性能
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了使用PHP构建XML – 考虑性能,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1549字,纯文字阅读大概需要3分钟。
内容图文
在PHP中构建XML时,是否可以更快地构建字符串,然后回显字符串或使用php为您提供的XML函数?目前我正在做以下事情:
更新为更好的代码片段:
$searchParam = mysql_real_escape_string($_POST['s']);
$search = new Search($searchParam);
if($search->retResult()>0){
$xmlRes = $search->buildXML();
}
else {
$xmlRes = '<status>no results</status>';
}
$xml = "<?xml version=\"1.0\"?>";
$xml.="<results>";
$xml.=$xmlRes;
$xml.="</results>"
header ("content-type: text/xml");
header ("content-length: ".strlen($xml));
echo($xml);
class Search {
private $num;
private $q;
function __construct($s){
$this->q = mysql_query('select * from foo_table where name = "'.$s.'"');
$this->num = mysql_num_rows($this->q);
}
function retResult(){
return $this->num;
}
function buildXML(){
$xml ='<status>success</status>';
$xml.='<items>';
while($row = mysql_fetch_object($this->q)){
$xml.='<item>';
$desTag = '<info><![CDATA[';
foreach ($row as $key => $current){
if($key=='fob'){
//do something with current
$b = mysql_query('select blah from dddd where id ='.$current);
$a = mysql_fetch_array($b);
$xml.='<'.$key.'>'.$a['blah'].'</'.$key.'>';
}
else if($key =='this' || $key=='that'){
$desTag = ' '.$current;
}
else {
$xml.='<'.$key.'>'.$current.'</'.$key.'>';
}
}
$desTag.= ']]></info>';
$xml.=$desTag;
$xml.='</item>';
}
$xml.='</items>';
return $xml;
}
}
有没有更快的方法来构建xml?我得到大约2000件物品,它开始减速..
提前致谢!
解决方法:
我没有看到你在连接之前没有试图逃避文本.这意味着你迟早会生成一些差不多但不完全是XML的东西,并且会被任何符合标准的解析器拒绝.
使用库(XMLWriter可能比其他库更高效,但我还没有用PHP完成XML).
内容总结
以上是互联网集市为您收集整理的使用PHP构建XML – 考虑性能全部内容,希望文章能够帮你解决使用PHP构建XML – 考虑性能所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。