CDom
1.0.0
https://github.com/amal/cdom
CDOM은 간단한 HTML/XML/BBCODE DOM 구성 요소입니다. DOM과 같은 구조에서 HTML 유사 마크 업 언어를위한 파서를 제공하고 CSS3 선택기의 모든 강도와 조작으로 DOM을 통해 검색을 지원합니다. CDOM은 PHP Simple HTML Dom Parser를 기반으로하며 MIT 라이센스에 따라 라이센스가 부여됩니다.
주요 특징과 가능성 :
CDOM은 Amal Samally에 의해 Anizoptera CMF를 위해 작성되었습니다 (Amal.samally at gmail.com)
cdom 사용은 매우 간단합니다. 대부분의 방법은 jQuery의 방법과 일치합니다. 모든 방법은 자세히 설명되어 있습니다. PHPDOC를 지원하는 경우 IDE가 자동 완성을 쉽게 표시 할 수 있습니다. 아래에 사용하는 예를 볼 수 있습니다. 전체 문서가 곧있을 것입니다.
HTML 요소를 얻는 방법?
// Create DOM from string
$ html = file_get_contents ( ' http://www.google.com/ ' );
$ dom = CDom:: fromString ( $ html );
// Find all images
foreach ( $ dom -> find ( ' img ' ) as $ element ) {
echo $ element -> src . "n" ;
}
// Find all links
foreach ( $ dom -> find ( ' a ' ) as $ element ) {
echo $ element -> href . "n" ;
}HTML 요소를 수정하는 방법은 무엇입니까?
// Create DOM from string
$ dom = CDom:: fromString ( ' <div id="hello">Hello</div><div id="world">World</div> ' );
// Add class to the second div (first last child)
$ dom -> find ( ' div:nth-last-child(1) ' )-> class = ' bar ' ;
// Change text of first div
$ dom -> find ( ' div[id=hello] ' )-> text ( ' foo ' );
echo $ dom . "n" ; // Output: <div id="hello">foo</div><div id="world" class="bar">World</div>HTML에서 내용을 추출합니다
$ html = file_get_contents ( ' http://www.google.com/ ' );
// Dump correctly formatted contents without tags from HTML
echo CDom:: fromString ( $ html )-> text () . "n" ;CDOM을 사용하여 간단한 BBCode에서 작업하십시오
$ bbMarkup = <<<'TXT'
[quote]
[b]Bold [u]Underline[/u][/b]
[i]Italic
[/quote]
[img width=12 height=16]url[/img]
TXT;
CDom:: $ bracketOpen = ' [ ' ;
CDom:: $ bracketClose = ' ] ' ;
CDom:: $ blockTags = array ( ' quote ' => true );
CDom:: $ inlineTags = array ( ' b ' => true , ' i ' => true , ' u ' => true );
CDom:: $ selfClosingTags = array ();
// Create DOM from string
$ dom = CDom:: fromString ( $ bbMarkup );
// Find [b]
$ b = $ dom -> find ( ' b ' );
$ expected = ' [b]Bold [u]Underline[/u][/b] ' ;
echo $ b -> outerHtml () . "n" ; // Output: [b]Bold [u]Underline[/u][/b]
// Change [img] width
$ img = $ dom -> lastChild ;
$ img -> width = 450 ;
echo $ img -> outerHtml () . "n" ; // Output: [img width="450" height="16"]url[/img]
// Convert [b] to html
CDom:: $ bracketOpen = ' < ' ;
CDom:: $ bracketClose = ' > ' ;
echo $ b -> outerHtml () . "n" ; // Output: <b>Bold <u>Underline</u></b>