2012-09-11 6 views
0

PHP 용 simplehtmldom lib를 사용하여 HTML 파일에서 텍스트를 가져 오려고합니다. <br> 태그 (TextAfterBreak) 뒤에있는 텍스트 만 원하지만 <font></font> 태그 (이 경우 TextInsideFontTextAfterBreak) 사이에서 전체 텍스트를 가져 오는 방법 만 알고 있습니다. find("/td/font/br")을 시도했지만 빈 문자열을 반환하는 이유는 아마도 닫는 </br> 태그가 없기 때문입니까? 어떤 도움이라도 대단히 감사하겠습니다!<br> 태그 simpleHTMLDOM PHP

$element=$row->find("/td/font"); 
echo $element =$element[0]->plaintext; 

그리고 출력 :

TextInsideFontTextAfterBreak 

참고 : HTML의 모든 테이블 행

<td> 
    <font size="-1" face="Verdana, Helvetica, Arial, sans-serif" color="#330000"> 
    TextInsideFont 
    <br> 
    TextAfterBreak 
    </font> 
</td> 

가 여기 내 코드입니다 : 여기

소스 HTML 소스 파일 조각의 파일은 고유하므로 정규식 또는 문자열 조작기는 작동하지 않습니다.

답변

2

explode() 그것은 새로운 라인 후, plaintext 때문에 스트립 html 데이터 :

$element = $row->find("/td/font"); 
$element = explode("\n", $element[0]->plaintext); 
echo trim($element[1]); 
+0

간단하고 우아한 솔루션입니다. 고맙습니다 :) – wandersolo