class xmlMessage{ protected $doc; protected $rootKey; public function __construct() { $this->doc = new DOMDocument('1.0', 'utf-8'); $this->doc -> formatOutput = true; $status = $this->doc -> createElement('status');//create new key $this->rootKey = $status; $this->doc->appendChild($status); } public function createSon($sonName, $value){$this->deleteChild($sonName);$sonKey = $this->doc -> createElement($sonName);//建立節點$content = $this->doc -> createTextNode($value);//節點值$sonKey -> appendChild($content);$this->rootKey->appendChild($sonKey); } public function appendNodeValue($tagName, $appendValue){if(!$this->hasNodeName($tagName)){ $this->createSon($tagName, '');}$this->rootKey->getElementsByTagName($tagName)->item(0)->nodeValue .= "\n".$appendValue; } public function editNodevalue($tagName, $value){if(!$this->hasNodeName($tagName)){ $this->createSon($tagName, '');}$this->rootKey->getElementsByTagName($tagName)->item(0)->nodeValue = $value; } public function deleteChild($tagName){if($this->hasNodeName($tagName)) $this->rootKey -> removeChild($this->rootKey->getElementsByTagName($tagName)->item(0)); } private function hasNodeName($tagName){$hasNode = false;$tempList = $this->doc->getElementsByTagName($tagName);foreach($tempList as $temp){ if($temp->nodeName == $tagName)$hasNode = true;}return $hasNode; } public function setNodesByArray($xmlArray){$now = getdate(time());$dataCreated = $now['year'].'/'.$now['mon'].'/'.$now['mday'].' '.$now['hours'].':'.$now['minutes'].':'.$now['seconds'];$this->createSon('language', strtolower($xmlArray['basicInfo']['language']));$this->createSon('source', $xmlArray['basicInfo']['source']);$this->createSon('resumeUrl', $xmlArray['basicInfo']['resumeUrl']);$this->createSon('email', $xmlArray['basicInfo']['email']);$this->createSon('resumeGuid', $xmlArray['basicInfo']['resumeGuid']);$this->createSon('dateCreated', $dataCreated);$this->createSon('success','TRUE'); } public function getXML(){return $this->doc->saveXML(); }}