- 精品下载 | 实用查询 | 词典查询 | 桌面壁纸 | 网址 | 笑话 | FLASH频道 | 天气文章资讯 | 站长工具 | 证件办理 | 闪字生成 | 广告代码 | 在线手册 | 有问必答
您现在的位置: 蓝派网 >> 文章中心 >> 网络编程 >> PHP >> 正文
站内文章搜索:           

PHP生成XML的类

作者:佚名    文章来源:网络转载    更新时间 :2007-11-26 23:33:06
'>')&&($row[$r][$field]>=$match)){
      $true++;//若条件符合,符合数加1
     }    
    }   
    //根据条件取值
    if($if=='and'){
     //如果多条件为and,当符合数等于条件数时,生成数组
     if($true==$cs){
      $result[]=$row[$r];
     }
    } else {
     //如果多条件为or,当有符合纪录时,生成数组
     if($true!=0){
      $result[]=$row[$r];
     }
    }
    //echo $true;
    //echo "<pre style=\"font-size:12px;\text-align:left\">";
    //print_r($true);
    $true=0;//符合条件数归零,进入下一轮循环
   }
  } else {
   $result=$this->array;
  }
  //echo "<pre style=\"font-size:12px;\text-align:left\">";
  //print_r($this->result);
  return $result;
    }
 //筛选或统计
 function xml_select($method,$condition,$if)
 {
  $result=$this->xml_fetch_array($condition,$if);
  if($method=='select'){
   return $result;
  } else {
   return count($result);
  }
 
 }
 //插入数据
 function xml_insert($condition,$if,$array)
 {
  $data=$this->xml_fetch_array($condition,$if);//总数据数组
  $data[]=$array;                              //插入后的总数据数组
  $this->array=$data;                          //更新总数组
  $this->WriteXml($data);
 }
 //得到更新的XML并改写
 function xml_update($condition,$if,$array){
  $datas=$this->array;                              //总数据数组
  $subtract=$this->xml_fetch_array($condition,$if);//要更新的数组
  //echo "<pre style=\"font-size:12px;\text-align:left\">";
  //print_r($data);
  //print_r($datas);
  //echo "每条记录中有".count($datas[0])."个值<br>";
  for($i=0;$i<count($datas);$i++){
   $data=$datas[$i];
   //echo "原始记录中的第".$i."条<br>";
   foreach($data as $k=>$v){
    //echo "-第".$i."条的".$k."值为".$v."<br>";
    //echo "--要查找的数组".$k."值为".$subtract[0][$k]."<br>";
    if($v==$subtract[0][$k]){
     $is++;
    }  
   }
   if($is==count($data)){
    //echo "----与第".$i."条符合<br>";
    $datas[$i]=$array;
    //array_splice($datas,$i,$i+1);
   }
   //echo "原始记录中的第".$i."条与要查找的有".$is."匹配<br>";   
   //echo "原始记录中的第".$i."条结束<br>";
   $is=0;
  }
  //array_splice($datas,2,2+1,$array);
  //echo "<pre style=\"font-size:12px;\text-align:left\">";
  //print_r($datas);
  $this->array=$datas;
  $this->WriteXml($datas);
 
 }
 //写入XML文件(全部写入)
 function WriteXml($array)
 {
  if(!is_writeable($this->dbase)){
   die("无法写入".$this->dbname.".xml");
  }
  $xml.="<?xml version=\"1.0\" encoding=\"gb2312\"?>\r\n";
  $xml.="<$this->dbname>\r\n";
  for($i=0;$i<count($array);$i++){
   $xml.="<$this->dbtable>\r\n";
   foreach($array[$i] as $k=>$s){
    $xml.="<$k>$s</$k>\r\n";
   }
   $xml.="</$this->dbtable>\r\n";
  }
  $xml.="</$this->dbname>";
  dbase,"w'>$fp=@fopen($this->dbase,"w");
  flock($fp, LOCK_EX);
  rewind($fp); 
  fputs($fp,$xml);
  fclose($fp);
 }
 //逐行写入xml(我试着写入10000行,感觉没一次写入快,所以没用这种写入方式)
 function WriteLine($array)
 {
  if(!is_writeable($this->dbase)){
   die("无法写入".$this->dbname.".xml");
  }
  dbase,"w'>$fp=@fopen($this->dbase,"w");
  rewind($fp);
  flock($fp, LOCK_EX);
  fputs($fp,"<?xml version=\"1.0\" encoding=\"gb2312\"?>\r\n");
  fputs($fp,"<$this->dbn

上一页  [1] [2] [3] [4] 下一页

  • 上一篇文章:
  • 下一篇文章:
  • 百度搜索: PHP生成XML的类

  • 发表评论】【打印此文】【关闭窗口】【点击数:
    ★好玩的休闲小游戏★
    网友评论:
    数据载入中,请稍后……