DOMXML 함수 노트
';echo"domxml 버 전:".domxmlversion();echo " xml 문 서 를 읽 을 때 프로세서 가 트 리 를 만 들 것 입 니 다.원본 트 리 라 고 합 니 다.이 나 무 는 표 의 다양한 종류의 노드 를 가지 고 있 습 니 다. 소스 트 리 가 가지 고 있 는 노드 설명
노드 유형 루트(뿌리) 이것 은 나무의 뿌리 노드 입 니 다.나무 어디 든 나타 날 수 있다.루트 노드 는 하위 노드 만 있 고 하위 노드 는 xml 문서 의 문서 요소 노드 를 말 합 니 다. Element(요소) 이 노드 는 문서 의 모든 요소 에 사 용 됩 니 다.요소 노드 의 하위 노드 는 그 내용 의 요소 노드,주석 노드,처리 정보 노드 와 텍스트 노드 일 수 있 습 니 다. Text(텍스트) 문서 에 나타 난 모든 텍스트 를 텍스트 노드 에 묶 습 니 다.텍스트 노드 는 같은 텍스트 노드 의 이 어 진 앞 또는 뒤의 형제 노드 가 있어 서 는 안 됩 니 다. Attribute(속성) 모든 요소 노드 는 자신 이 추가 한 속성 노드 가 있 습 니 다.기본 속성 값 은 지정 한 속성 과 같은 방법 으로 처리 합 니 다.이 노드 들 은 모두 하위 노드 가 없다. Namespace(이름) 는 각각 xlmns:와 속성 노드 로 시작 하 는 요소 에 대해 이름 빈 칸 노드 가 있 습 니 다.이 노드 들 은 하위 노드 가 없습니다. Processing Instruction(처리 명령) 모든 처리 명령 은 하나의 단독 노드 가 있 습 니 다.이 노드 들 은 모두 하위 노드 가 없다. Comment(주석) 각각 주석 노드 가 있 습 니 다.이 노드 들 은 모두 하위 노드 가 없다. ";// xmltree domxml_dumpmem$filename="xml 소스 트 리.xml";/$filename = "resume.xml";$fp = fopen($filename,"r"); $inXML = fread($fp,filesize($filename)); fclose($fp); // 언어 설정 삭제//$inXML=strreplace(' encoding="GB2312"',"",$inXML);$inXML = eregi_replace(' encoding="[a-z0-9_-]+"',"",$inXML);$doc = xmltree($inXML); // xmltree 로$myxml=$doc->dumpmem()분석 하기; // 문자열 xml version="1.0" // 만약 다시 한 번 집행 한다 면,머리 는 xml version="1.0" encoding="ISO-8859-1"//$myxml = eregi_replace('&#[0-9]+;',"",$myxml); // echo"xmltree 로
해석 하기"삭제 하기;echo "
";//print_r($doc); // 나무 전 체 를 볼 수 있 고 vardump($doc);// xmldoc$doc = xmldoc($inXML); $myxml = $doc->dumpmem();echo"xmldoc 로
해석 하기;echo "
";//print_r($doc); // 루트 노드 만 볼 수 있 습 니 다//domxmlnew_xmldoc$doc = domxml_new_xmldoc("1.0");$root = $doc->add_root("HTML");$head = $root->new_child("HEAD", "");$head->new_child("TITLE","DOMXML 테스트 0");$head->new_child("TITLE","DOMXML 테스트 1");$head->set_attribute("Language", "ge");domxml_node_set_content($head,"ppp"); // 노드 의 내용 을 설정 하고 여러 번 실행 하 는 것 은 중 첩 된 domxml 입 니 다.node_set_content($head,"ttt");// 함수 명 중 1-2 개 밖 에 없 는''입 니 다.의 함수,대상 으로 사용 할 수 있 는 방법 은$myxml=$doc->dumpmem();echo"사용자 정의 xml
";echo "
";// 노드 의 옮 겨 다 니 기/* 노드 구조 DomElement Object type = 1 tagname=노드 이름 DomText Object type = 3 content=절 내용 점 DomCData Object type = 4 content=절 내용 점 DomProcessingInstruction Object type 없 음 target=처리 명령 data=인자*/$ar[]=$doc->root(); // 루트 노드$ar[]=$ar[count($ar)-1]->children()가 져 오기;$ar[] = $ar[count($ar)-1][0]->children();// 함수 domxmlchildren()노드 매개 변 수 를 되 돌려 줄 수 없습니다//노드 매개 변 수 를 되 돌려 주 려 면 domxml 을 사용 해 야 합 니 다.attributes()//var_dump(domxml_attributes($head));//print_r($ar[1][0]->attributes());//print_r($ar);function xml_dumpmem($xmldoc) { static $mode = 0; $xmlstr = ""; // 노드 가 져 오기,배열 에 저장 if(get_class($xmldoc) == "DomDocument") { $xmlstr = ''.""; if(count($xmldoc->children) == 1) // 루트 노드,다른 멤버 없 음 $docs[] = $xmldoc->root(); else $docs = $xmldoc->children(); // 루트 노드,다른 멤버 가 있 습 니 다. }else { $docs = $xmldoc->children(); // 일반 노드 }// echo __LINE__."
"; foreach($docs as $doc) { $attr = $doc->attributes(); switch($doc->type) { case 1: $xmlstr .= "<{$doc->tagname}"; // 라벨 헤드 if($attr) { foreach($attr as $key) $xmlstr .= " {$key->name}=\"{$key->value}\""; // 태그 매개 변수 } $xmlstr .= ">"; // 태그 끝 $xmlstr .= xml_dumpmem($doc); // 진입 부 노드 $xmlstr .= "tagname}>"; // 라벨 닫 기 break; case 3: $xmlstr .= $doc->content; break; case 4: $xmlstr .= "content; $xmlstr .= "]]>"; break; default: if(get_class($doc) == "DomProcessingInstruction") { $xmlstr .= "target}"; $xmlstr .= " {$doc->data}?>"; } break; } } return $xmlstr;}if(1) { $filename = "resume.xml";// $filename = "resume.xsl"; $filename="xml 소스 트 리.xml"; $fp = fopen($filename,"r"); $inXML = fread($fp,filesize($filename)); fclose($fp); $inXML = eregi_replace(' encoding="[a-z0-9_-]+"',"",$inXML);// $doc = xmltree($inXML); // xmltree 분석 사용 하기 $doc = xmldoc($inXML); // xmldoc 해석}//xsl 문 서 를 해석 할 수 없습니다$myxml=xmldumpmem($doc);echo"스스로 dumpmem 을 쓰 면 틀 리 지 않 습 니 다
";echo "
";print_r($doc);?>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
JSP/JAVABEAN+TOMCAT 4.0.5+MYSQL 조합 건설 총괄중국어 문제 가 영문 판 운영 체제 에서 개발 되 지 않 았 다 면 이 를 큰 일 로 여기 지 않 았 을 것 이다.지금까지 어떤 문제 들 도 좋 은 해결 방법 을 찾 지 못 했다.예 를 들 어 제어 면 에 있 는 서...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.