DOM 문서 객체 모델
가져오기
사전 정의된 상수
다음 상수는 이 확장에 의해 정의되며 이 확장이 PHP로 컴파일되거나 런타임 시 동적으로 로드되는 경우에만 사용할 수 있습니다.
XML 상수 상수 값 설명
XML_ELEMENT_NODE(정수) 1 노드는 DOMElement입니다.
XML_ATTRIBUTE_NODE(정수) 2 노드는 DOMAttr입니다.
XML_TEXT_NO DE (정수) 3 노드는 DOMText입니다
XML_CDATA_SECTION_NODE(정수 ) 4 노드는 DOMCharacterData
XML_ENTITY_REF_NODE(정수) 5 노드는 DOMEntityReference
입니다. XML_ENTITY_NODE(정수) 6 노드는 DOMEntity
입니다. XML_PI_NODE(정수) 7 노드는 DOMProcessingInstruction
입니다. XML_COMMENT_NODE(정수) 8 노드는 DOMComment
XML_DOCUMENT_NODE(정수) 9 노드는 DOMDocument
XML_DOCUMENT_TYPE_NODE(정수) 10 노드는 DOMDocumentType
XML_DOCUMENT_FRAG_NODE(정수) 1 1 노드는 DOMDocumentFragment
XML_NOTATION_NODE(정수)입니다. 12 노드는 DOMNotation
XML_HTML_DOCUMENT_NODE(정수) 13
XML_DTD_NODE(정수) 14
XML_ELEMENT_DECL_NODE(정수) 15
XML_ATTRI BUTE_DECL_NODE(정수) 16
XML_ENTITY_DECL_NODE(정수) 17
XML_NAMESPACE_DECL_NODE(정수) 18
XML_ATTRIBUTE_CDATA(정수) 1
XML_ATTRIBUTE_ID(정수) 2
XML_ATTRIBUTE_IDREF(정수) 3
XML_ATTRIBUTE_IDREFS(in 정수) 4
XML_ATTRIBUTE_ENTITY(정수) 5
XML_ATTRIBUTE_NMTOKEN(정수) 7
XML_ATTRIBUTE_NMTOKENS(정수) 8
XML_ATTRIBUTE_ENUMERATION(정수) 9
XML_ATTRIBUTE_NOTATION(정수) 10
DOMException 상수 값 설명
DOM_PHP_ERR(정수) 0 오류 코드는 DOM 사양에 포함되지 않습니다. PHP 오류를 의미합니다.
DOM_INDEX_SIZE_ERR(정수) 1 인덱스 또는 크기가 음수이거나 허용된 값보다 큰 경우.
DOMSTRING_SIZE_ERR(정수) 2 지정된 텍스트 범위가 DOMString에 맞지 않는 경우
DOM_HIERARCHY_REQUEST_ERR(정수) 3 노드가 속하지 않는 곳에 삽입된 경우
DOM_WRONG_DOCUMENT_ERR(정수) 4 노드가 해당 노드를 생성한 문서와 다른 문서에서 사용되는 경우
DOM_INVALID_CHARACTER_ERR(정수) 5 만약 이름 등 유효하지 않거나 잘못된 문자가 지정된 경우
DOM_NO_DATA_ALLOWED_ERR (정수) 6 데이터를 지원하지 않는 노드에 데이터가 지정된 경우
DOM_NO_MODIFICATION_ALLOWED_ERR (정수) 7 수정을 시도한 경우 수정이 허용되지 않는 객체.
DOM_NOT_FOUND_ERR (정수) 8 노드가 존재하지 않는 컨텍스트에서 노드를 참조하려고 시도한 경우.
DOM_NOT_SUPPORTED_ERR (정수) 9 구현이 요청한 것을 지원하지 않는 경우 개체 또는 작업 유형.
DOM_INUSE_ATTRIBUTE_ERR(정수) 10 이미 다른 곳에서 사용 중인 속성을 추가하려고 시도하는 경우.
DOM_INVALID_STATE_ERR(정수) 11 더 이상 사용할 수 없거나 더 이상 사용할 수 없는 개체를 사용하려고 시도한 경우.
DOM_SYNTAX_ERR(정수) 12 유효하지 않거나 잘못된 문자열이 지정된 경우
DOM_INVALID_MODIFICATION_ERR(정수) 13 기본 개체의 유형을 수정하려고 시도한 경우.
DOM_NAMESPACE_ERR(정수) 14 네임스페이스와 관련하여 잘못된 방식으로 개체를 생성하거나 변경하려고 시도한 경우.
DOM_INVALID_ACCESS_ERR(정수) ) 15 매개변수 또는 작업이 기본 개체에서 지원되지 않는 경우.
DOM_VALIDATION_ERR(정수) 16 insertBefore 또는 RemoveChild와 같은 메서드를 호출하면 "부분 유효성"과 관련하여 노드가 유효하지 않게 되는 경우 이 예외는 다음과 같습니다. 발생하고 작업이 수행되지 않습니다.
DOMNode {
/* 属性 */
public readonly string $nodeName ; //현재 노드 유형에 대해 가장 정확한 이름을 반환합니다.
public string $nodeValue ; //유형에 따른 이 노드의 값
public readonly int $nodeType ; //노드의 유형을 가져옵니다. 사전 정의된 XML_xxx_NODE 상수 중 하나
공개 읽기 전용 DOMNode $parentNode ; //이 노드의 부모
public readonly DOMNodeList $childNodes ; //이 노드의 모든 하위 항목을 포함하는 DOMNodeList입니다. 자식이 없는 경우
//이것은 빈 DOMNodeList입니다.
공개 읽기 전용 DOMNode $firstChild ; //이 노드의 첫 번째 자식입니다. 그러한 노드가 없으면 NULL을 반환합니다.
public readonly DOMNode $lastChild ; //이 노드의 마지막 자식입니다. 그러한 노드가 없으면 NULL을 반환합니다.
public readonly DOMNode $previousSibling ; //이 노드 바로 앞의 노드입니다. 그러한 노드가 없으면 NULL을 반환합니다.
public readonly DOMNode $nextSibling ; //이 노드 바로 다음에 오는 노드입니다. 그러한 노드가 없으면 NULL을 반환합니다.
public readonly DOMNamedNodeMap $attributes ; //이 노드의 속성을 포함하는 DOMNamedNodeMap(DOMElement인 경우)
//그렇지 않으면 NULL입니다.
공개 읽기 전용 DOMDocument $ownerDocument ; //이 노드와 연결된 DOMDocument 개체.
공개 읽기 전용 문자열 $namespaceURI ; //이 노드의 네임스페이스 URI, 지정되지 않은 경우 NULL.
public string $prefix ; //이 노드의 네임스페이스 접두사, 지정되지 않은 경우 NULL.
public readonly string $localName ; //이 노드의 정규화된 이름의 로컬 부분을 반환합니다.
공개 읽기 전용 문자열 $baseURI ; //이 노드의 절대 기본 URI 또는 구현이 불가능한 경우 NULL
//절대 URI를 얻습니다.
공개 읽기 전용 문자열 $textContent ; //이 속성은 이 노드와 그 하위 항목의 텍스트 콘텐츠를 반환합니다.
/* 방법 */
public DOMNodeappendChild ( DOMNode $newnode ) 하위 항목 끝에 새 하위 항목을 추가합니다
public string C14N ([ bool $exclusive [, bool $with_comments [, array $xpath [, array $ns_prefixes ]]]] ) 노드를 문자열로 정규화
public int C14NFile ( string $uri [, bool $exclusive [, bool $with_comments [, array $xpath [, array $ns_prefixes ]]]] ) 노드를 파일로 정규화
public DOMNode cloneNode ([ bool $deep=False ] ) 노드 복제
public int getLineNo ( void ) 가져오기 노드의 행 번호
public string getNodePath ( void ) 노드의 XPath 가져오기
public bool hasAttributes ( void ) 노드에 속성이 있는지 확인
public bool hasChildNodes ( void ) 노드에 하위가 있는지 확인
public DOMNode insertBefore ( DOMNode $newnode [, DOMNode $refnode ] ) 참조 노드 앞에 새 하위 항목을 추가합니다
public bool isDefaultNamespace ( string $namespaceURI ) 지정된 네임스페이스URI가 기본 네임스페이스인지 아닌지 확인
public bool isSameNode ( DOMNode $node ) 두 노드가 동일한 노드인지 나타냅니다.
public bool isSupported ( string $feature , string $version ) 특정 버전에서 기능이 지원되는지 확인
public string lookupNamespaceURI ( string $prefix ) 접두사를 기반으로 하는 노드의 네임스페이스 URI
공개 문자열 lookupPrefix( string $namespaceURI ) 네임스페이스 URI를 기반으로 노드의 네임스페이스 접두사를 가져옵니다
public void Normalize( void ) 노드
공개 DOMNode 제거Child ( DOMNode $oldnode ) 하위 항목 목록에서 하위 항목 제거
public DOMNode replacementChild ( DOMNode $newnode , DOMNode $oldnode ) 하위 항목 교체
}
DOMNamedNodeMap은 Traversable {
/* 属性 */
읽기 전용 public int $length ; 맵의 노드 수입니다. 유효한 하위 노드 인덱스의 범위는 0부터 길이 - 1까지입니다.
/* 방법 */
DOMNode getNamedItem ( string $name ) 이름으로 지정된 노드를 검색합니다
DOMNode getNamedItemNS ( string $namespaceURI , string $localName ) 로컬 이름 및 네임스페이스 URI
DOMNode 항목( int $index )으로 지정된 노드를 검색합니다.
}
DOMNotation은 DOMNode를 확장합니다. > 읽기 전용 공개 문자열 $publicId ;
읽기 전용 공개 문자열 $systemId ;
}
DOMProcessingInstruction은 DOMNode를 확장합니다. , string $value ] )
}
DOMAttr은 DOMElement 객체 속성을 나타냅니다.
DOMAttr은 DOMNode {
/* Attribute*/
public readonly string $name; > public readonly DOMElement $ownerElement ; //이 요소에 포함된 속성
public readonly bool $schemaTypeInfo ; //현재 및 향후 구현은 NULL입니다.
public readonly bool $specified ; 🎜> /* 메소드*/
public __construct ( string $name [, string $value ] )
public bool isId ( void )
DOMNodeList는 Traversable을 구현합니다. {
/* Properties*/
readonly public int $length ; 목록의 노드 수입니다. 유효한 하위 노드 인덱스의 범위는 0부터 길이 - 1까지입니다.
/* 방법 */
DOMNode DOMNodelist::item ( int $index ) index
}
DOMXPath {
/* Properties*/
public DOMDocument $document ;
/ * Method*/
public __construct( DOMDocument $doc ) public 혼합 평가( string $expression [, DOMNode $contextnode [, bool $registerNodeNS = true ]] ) 주어진 XPath 표현식을 평가하고 가능한 경우 형식화된 결과를 반환합니다.
public DOMNodeList 쿼리( string $expression [, DOMNode $ contextnode [, bool $registerNodeNS = true ]] ) 주어진 XPath 표현식을 평가합니다
public bool RegisterNamespace ( string $prefix , string $namespaceURI ) DOMXPath 객체에 네임스페이스를 등록합니다
public void RegisterPhpFunctions ([ Mixed $restrict ] ) PHP 함수를 XPath 함수로 등록
}
DOMElement는 DOMNode를 확장합니다. {
/* 属性 */
읽기 전용 public bool $schemaTypeInfo ; 아직 구현되지 않았으며 항상 NULL
을 반환합니다. 읽기 전용 공개 문자열 $tagName ; 요소 이름
/* 방법 */
public __construct ( string $name [, string $value [, string $namespaceURI ]] ) 새 DOMElement 객체를 생성합니다.
public string getAttribute ( string $name )
public DOMAttr getAttributeNode ( string $name )
public DOMAttr getAttributeNodeNS ( string $namespaceURI , string $localName )
public string getAttributeNS ( string $namespaceURI , string $localName )
public DOMNodeList getElementsByTagName ( string $name )
public DOMNodeList getElementsByTagNameNS( 문자열 $namespaceURI , 문자열 $localName )
public bool hasAttribute( 문자열 $name )
public bool hasAttributeNS( 문자열 $namespaceURI , 문자열 $localName )
public bool RemoveAttribute( 문자열 $name )
public bool RemoveAttributeNode ( DOMAttr $oldnode )
public bool RemoveAttributeNS ( string $namespaceURI , string $localName )
public DOMAttr setAttribute ( string $name , string $value )
public DOMAttr setAttributeNode ( DOMAttr $attr )
public DOMAttr setAttributeNodeNS ( DOMAttr $attr )
public void setAttributeNS ( string $namespaceURI , string $qualifiedName , string $value )
public void setIdAttribute ( string $name , bool $isId )
public void setIdAttributeNode ( DOMAttr $attr , bool $isId )
public void setIdAttributeNS ( string $namespaceURI , string $localName , bool $isId )
}
DOMCharacterData 문자 데이터가 있는 노드를 나타냅니다. 이 클래스에 직접적으로 대응하는 노드는 없지만 다른 노드는 이 클래스에서 상속됩니다.
DOMCharacterData는 DOMNode {
/* 属性 */
public string $data ; 노드의 콘텐츠.
읽기 전용 public int $length ; 내용의 길이.
/* 방법 */
void appendData ( string $data ) 노드의 문자 데이터 끝에 문자열을 추가합니다
void deleteData ( int $offset , int $count ) 노드에서 문자 범위 제거
void insertData ( int $offset , string $data ) 지정된 16비트 단위 오프셋에 문자열 삽입
void replacementData ( int $offset , int $count , string $ data ) DOMCharacterData 노드 내의 하위 문자열 교체
string substringData ( int $offset , int $count ) 노드에서 데이터 범위를 추출합니다
}
DOMText DOMText 클래스는 DOMCharacterData에서 상속되며 텍스트 콘텐츠를 나타냅니다. DOMElement 또는 DOMAttr.
DOMText 확장 DOMCharacterData {
/* 属性 */
읽기 전용 공개 문자열 $wholeText ; 논리적으로 인접한(요소, 주석 또는 처리 명령으로 분리되지 않은) 텍스트 노드의 모든 텍스트를 보유합니다.
/* 방법 */
public __construct ([ string $value ] ) 새 DOMText 객체를 생성합니다.
public bool isWhitespaceInElementContent ( void ) 이 텍스트 노드에 공백이 포함되어 있는지 여부를 나타냅니다.
public DOMText SplitText ( int $offset ) 이 노드를 지정된 오프셋에서 두 개의 노드로 나눕니다.
}
DOMCdataSection DOMCdataSection은 DOMText에서 상속됩니다. CData 구문의 텍스트 표현을 위해.
DOMCdataSection은 DOMText를 확장합니다. {
/* 방법 */
public __construct ( string $value )
}
DOMComment 설명 노드, 로 구분된 문자를 나타냅니다.
DOMComment 확장 DOMCharacterData {
/* 방법 */
public __construct ([ string $value ] )
}
DOMDocumentType 각 DOMDocument에는 값이 NULL 또는 DOMDocumentType 객체인 doctype 속성이 있습니다.
DOMDocumentType은 DOMNode를 확장합니다 {
/* 属性 */
읽기 전용 공개 문자열 $publicId ; 외부 하위 집합의 공개 식별자.
읽기 전용 공개 문자열 $systemId ; 외부 하위 집합의 시스템 식별자입니다. 절대 URI일 수도 있고 아닐 수도 있습니다.
읽기 전용 공개 문자열 $name ; DTD의 이름 즉, DOCTYPE 키워드 바로 뒤에 오는 이름입니다.
읽기 전용 public DOMNamedNodeMap $entities ; DTD에 선언된 외부 및 내부 일반 엔터티를 포함하는 DOMNamedNodeMap.
읽기 전용 public DOMNamedNodeMap $notations ; DTD에 선언된 표기법을 포함하는 DOMNamedNodeMap.
읽기 전용 공개 문자열 $internalSubset ; 내부 하위 집합은 문자열이거나, 없는 경우 null입니다. 여기에는 구분 대괄호가 포함되어 있지 않습니다.
}
DOMDocumentFragment 확장 DOMNode {
public bool appendXML ( string $data ) 원시 XML 데이터 추가
}
DOMEntity 이 인터페이스는 알려진 엔터티를 나타냅니다. XML 문서에서 구문 분석되거나 구문 분석되지 않습니다.
DOMEntity 확장 DOMNode {
/* 属性 */
읽기 전용 공개 문자열 $publicId ; 지정된 경우 엔터티와 연결된 공개 식별자이고, 그렇지 않으면 NULL입니다.
읽기 전용 공개 문자열 $systemId ; 지정된 경우 엔터티와 연결된 시스템 식별자이고, 그렇지 않으면 NULL입니다. 절대 URI일 수도 있고 아닐 수도 있습니다.
읽기 전용 공개 문자열 $notationName ; 구문 분석되지 않은 엔터티의 경우 엔터티에 대한 표기법의 이름입니다. 구문 분석된 엔터티의 경우 이는 NULL입니다.
공개 문자열 $actualEncoding ; 파싱된 외부 엔터티인 경우 파싱 시 이 엔터티에 사용되는 인코딩을 지정하는 속성입니다. 내부 하위 집합의 엔터티이거나 알 수 없는 엔터티인 경우 NULL입니다.
읽기 전용 공개 문자열 $encoding ; 외부 구문 분석 엔터티인 경우 텍스트 선언의 일부로 이 엔터티의 인코딩을 지정하는 속성입니다. 그렇지 않으면 NULL입니다.
읽기 전용 공개 문자열 $version ; 외부 구문 분석 엔터티인 경우 텍스트 선언의 일부로 이 엔터티의 버전 번호를 지정하는 속성입니다. 그렇지 않으면 NULL입니다.
}
DOMEntityReference는 DOMNode를 확장합니다. {
public __construct ( string $name )
}
Exception {
/* 속성*/
protected string $message; 예외 메시지 내용
protected int $code; 예외 코드
protected string $file; > protected int $line ; 예외가 발생한 파일의 줄 번호
/* 방법*/
public __construct ([ string $message = "" [, int $code = 0 [, Exception $previous = NULL ]]] )
final public string getMessage(void) 예외 메시지 내용 가져오기
final public Exception getPrevious(void) 예외 체인에서 이전 예외 반환
final public int getCode(void) 가져오기 예외 코드
final public string getFile ( void ) 예외가 발생한 프로그램 파일의 이름을 가져옵니다
final public int getLine ( void ) 예외가 발생한 파일의 코드 줄 번호를 가져옵니다
final public array getTrace ( void ) 예외 추적 정보 가져오기
final public string getTraceAsString (void) 문자열 유형의 예외 추적 정보 가져오기
public string __toString (void) 예외 개체를 문자열로 변환
final private void __clone (void) 예외 clone
}
DOMException DOM 작업은 특정 상황, 즉 논리적 이유로 작업 수행이 불가능한 경우 예외를 발생시킵니다.
DOMException은 예외 {
/* 속성*/을 확장합니다.
readonly public int $code ; 생성된 오류 유형을 나타내는 정수
}
DOMImplementation DOMImplementation 인터페이스는 문서 객체 모델의 특정 인스턴스와 독립적인 작업을 수행하기 위한 다양한 메서드를 제공합니다.
DOMImplementation {
/ * 메소드*/
__construct ( void )
public DOMDocument createDocument ([ string $namespaceURI = NULL [, string $qualifiedName = NULL [, DOMDocumentType $doctype = NULL ]]] ) 문서 요소를 사용하여 지정된 유형의 DOMDocument 객체를 생성합니다
public DOMDocumentType createDocumentType ([ string $qualifiedName = NULL [, string $publicId = NULL [, string $systemId = NULL ]]] ) 빈 DOMDocumentType 객체를 생성합니다
public bool hasFeature ( string $feature , string $version ) DOM 구현이 특정 기능을 구현하는지 테스트합니다
}
DOMDocument DOMNode 확장 {
/* 属性 */
읽기 전용 공개 문자열 $actualEncoding ; 더 이상 사용되지 않습니다. 문서의 실제 인코딩은 읽기 전용 인코딩과 동일합니다.
읽기 전용 public DOMConfiguration $config ; 더 이상 사용되지 않습니다. DOMDocument::normalizeDocument()가 호출될 때 사용되는 구성입니다.
읽기 전용 public DOMDocumentType $doctype ; 이 문서와 관련된 문서 유형 선언입니다.
읽기 전용 public DOMElement $documentElement ; 문서의 문서 요소인 하위 노드에 직접 접근할 수 있게 해주는 편의 속성입니다.
public string $documentURI ; 문서의 위치 또는 정의되지 않은 경우 NULL.
공개 문자열 $encoding ; XML 선언에 지정된 대로 문서를 인코딩합니다. 이 속성은 최종 DOM 레벨 3 사양에는 없지만 이 구현에서 XML 문서 인코딩을 조작하는 유일한 방법입니다.
public bool $formatOutput ; 들여쓰기와 추가 공간을 사용하여 출력 형식을 멋지게 지정합니다.
읽기 전용 public DOMImplementation $implementation ; 이 문서를 처리하는 DOMImplementation 개체입니다.
public bool $preserveWhiteSpace = true ; 중복된 공백을 제거하지 마십시오. 기본값은 TRUE입니다.
public bool $recover ; 소유권. 복구 모드를 활성화합니다. 즉, 형식이 올바르지 않은 문서를 구문 분석하려고 합니다. 이 속성은 DOM 사양의 일부가 아니며 libxml에만 적용됩니다.
public bool $resolveExternals ; doctype 선언에서 외부 엔터티를 로드하려면 TRUE로 설정합니다. 이는 XML 문서에 문자 엔터티를 포함하는 데 유용합니다.
public bool $standalone ; 더 이상 사용되지 않습니다. XML 선언에 지정된 대로 문서가 독립형인지 여부는 xmlStandalone에 해당합니다.
public bool $strictErrorChecking = true ; 오류 발생 시 DOMException이 발생합니다. 기본값은 TRUE입니다.
public bool $substituteEntities ; 소유권. 엔터티를 대체할지 여부입니다. 이 속성은 DOM 사양의 일부가 아니며 libxml에만 적용됩니다.
public bool $validateOnParse = false ; DTD를 로드하고 유효성을 검사합니다. 기본값은 FALSE입니다.
공개 문자열 $version ; 더 이상 사용되지 않습니다. XML 버전은 xmlVersion에 해당합니다.
읽기 전용 공개 문자열 $xmlEncoding ; XML 선언의 일부로 이 문서의 인코딩을 지정하는 속성입니다. 문서가 메모리에 생성된 경우와 같이 지정되지 않거나 알 수 없는 경우에는 NULL입니다.
public bool $xmlStandalone ; 이 문서가 독립형인지 여부를 XML 선언의 일부로 지정하는 속성입니다. 지정되지 않은 경우 FALSE입니다.
public string $xmlVersion ; XML 선언의 일부로 이 문서의 버전 번호를 지정하는 속성입니다. 선언이 없고 이 문서가 "XML" 기능을 지원하는 경우 값은 "1.0"입니다.
/* 방법 */
public __construct ([ string $version [, string $encoding ] ] )
public DOMAttr createAttribute ( string $name )
public DOMAttr createAttributeNS ( string $namespaceURI , string $qualifiedName ) 연관된 네임스페이스가 있는 새 속성 노드 생성
public DOMCDATASection createCDATASection ( string $data )
공개 DOMComment createComment( 문자열 $data )
공개 DOMDocumentFragment createDocumentFragment( void )
공개 DOMElement createElement( 문자열 $name [, 문자열 $value ] )
공개 DOMElement createElementNS( 문자열 $namespaceURI , 문자열 $qualifiedName [, 문자열 $값 ] )
public DOMEntityReference createEntityReference( string $name )
public DOMProcessingInstruction createProcessingInstruction( string $target [, string $data ] )
public DOMText createTextNode( string $content )
public DOMElement getElementById( string $elementId ) 다음을 검색합니다. 특정 ID를 가진 요소
public DOMNodeList getElementsByTagName ( string $name ) 주어진 로컬 태그 이름을 가진 모든 요소를 검색합니다
public DOMNodeList getElementsByTagNameNS ( string $namespaceURI , string $localName ) 지정된 태그 이름을 가진 모든 요소를 검색합니다. 네임스페이스
public DOMNode importNode ( DOMNode $importedNode [, bool $deep ] ) 노드를 현재 문서로 가져오기
public 혼합 로드( string $filename [, int $options = 0 ] ) 파일에서 XML 로드
public bool loadHTML ( string $source [, int $options = 0 ] ) 문자열에서 HTML 로드
public bool loadHTMLFile ( string $filename [, int $options = 0 ] ) 파일에서 HTML 로드
public 혼합 loadXML( string $source [, int $options = 0 ] ) 문자열에서 XML 로드
public voidnormalizeDocument( void ) 문서를 표준화합니다
public bool RegisterNodeClass ( string $baseclass , string $extendedclass ) 사용된 확장 클래스 등록 기본 노드 유형을 생성하려면
public bool RelaxNGValidate( string $filename ) 문서에 대해 RelaxNG 검증을 수행합니다.
public bool RelaxNGValidateSource( string $source ) 문서에 대해 RelaxNG 검증을 수행합니다
public int save( string $filename [ , int $options ] ) 내부 XML 트리를 다시 파일로 덤프
public string saveHTML ([ DOMNode $node = NULL ] ) HTML 형식을 사용하여 내부 문서를 문자열로 덤프
public int saveHTMLFile ( string $filename ) HTML 형식을 사용하여 내부 문서를 파일로 덤프
public string saveXML ([ DOMNode $node [, int $options ]] ) 내부 XML 트리를 다시 문자열로 덤프
public boolschemaValidate( string $filename [ , int $flags ] ) 스키마 기반 문서 유효성 검사
public boolschemaValidateSource ( string $source [, int $flags ] ) 스키마 기반 문서 유효성 검사
public bool verify ( void ) 스키마 기반 문서 유효성 검사 DTD
public int xinclude ([ int $options ] ) DOMDocument 객체의 XIncludes를 대체합니다
}
<?php
$url = 'http://movie.douban.com/category/' ;
function getPage($url)
{
$curl = curl_init();
$header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
$header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
$header[] = "Cache-Control: max-age=0";
$header[] = "Connection: keep-alive";
$header[] = "Keep-Alive: 300";
$header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
$header[] = "Accept-Language: en-us,en;q=0.5";
$header[] = "Pragma: "; // browsers keep this blank.
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_USERAGENT, 'Googlebot/2.1 (+http://www.google.com/bot.html)');
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
curl_setopt($curl, CURLOPT_REFERER, 'http://www.baidu.com');
curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
curl_setopt($curl, CURLOPT_AUTOREFERER, true);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_TIMEOUT, 10);
$html = curl_exec($curl);
curl_close($curl);
return $html;
}
$text = getPage($url);
$xml = new DOMDocument();
$xml->loadHTMLFile("test.html");
$xml->encoding='UTF-8';
$xpath=new DOMXpath($xml);
$elements = $xpath->query("/html/body//div[@id='type']/ul");
var_dump($elements);
foreach ( $elements as $e){
foreach ($e->childNodes as $es){
var_dump($es->nodeValue);
}
}
?>
로그인 후 복사
以上就介绍了php DOM 解析, 包括了方face的内容, 希望对PHP教程有兴趣的朋友有所帮助.