<?phpClass XML{var $icerik="";var $anaEtiket="";var $altEtiket="";var $CRLF="\r\n";var $son="";Function XML($Version="1.0",$Encoding="utf-8"){$this->icerik.="<?xml version=\"{$Version}\" encoding=\"{$Encoding}\"?>{$this->CRLF}";}Function etiketOlustur($etiketIsmi="root",$ozellik=""){$etiketIsmi=$this->filtre($etiketIsmi);$this->anaEtiket=$etiketIsmi;$ozellik=$this->ozellikAyir($ozellik);return $this->icerik.="<{$etiketIsmi}{$ozellik}>{$this->CRLF}";}Function etiketEkle($etiketIsmi,$ozellik,$veri="",$CDATA=true){$etiketIsmi=$this->filtre($etiketIsmi);if(empty($veri)){if(!empty($this->altEtiket)){$this->icerik.="</{$this->altEtiket}>{$this->CRLF}";}$this->altEtiket=$etiketIsmi;$ozellik=$this->ozellikAyir($ozellik);return $this->icerik.="<{$etiketIsmi}{$ozellik}>{$this->CRLF}";}else{$ozellik=$this->ozellikAyir($ozellik);return $this->icerik.=$CDATA?"<{$etiketIsmi}{$ozellik}>{$this->CRLF}<![CDATA[{$veri}]]>{$this->CRLF}</{$etiketIsmi}>{$this->CRLF}":"<{$etiketIsmi}{$ozellik}>{$veri}</{$etiketIsmi}>{$this->CRLF}";}}Function son(){if($this->son){return $this->icerik;}else{$this->son=true;return $this->icerik=$this->altEtiket==""?$this->icerik."</{$this->anaEtiket}>":$this->icerik."</{$this->altEtiket}>{$this->CRLF}</{$this->anaEtiket}>";}}Function goster(){ob_start();header("Content-type: text/xml");echo $this->son();ob_end_flush();}Function kaydet($dosya){if(!$Handle=fopen($dosya,'wb+')){$this->hata("Dosya Yazılamıyor");}flock($Handle,LOCK_EX);fwrite($Handle,$this->son());return fclose($Handle);}Function hata($hataMetni='',$hataNo='',$Stop=true){exit($hataMetni);}Function ozellikAyir($veri){$ozellik='';if(is_array($veri)){foreach($veri as $anahtar=>$deger){$deger=$this->filtre($deger);$ozellik.=" $anahtar=\"$deger\"";}}return $ozellik;}Function filtre($veri){$veri=trim($veri);$ara=array("<",">","\"");$degistir=array("","","'");return str_replace($ara,$degistir,$veri);}}$n=new XML($Version="1.0",$Encoding="utf-8");$n->etiketOlustur($etiketIsmi="site",'');$n->etiketEkle("kategori",'',$veri="Bu bir test yazısıdır",$CDATA=true);$n->goster();$n->kaydet($dosya="data.xml");$n->hata();$n->son();?>
Çıktısı
<![CDATA[ Bu bir test yazısıdır ]]>