2014-02-09 1 views
-1

URL로 웹 페이지를 구문 분석하여 모바일 친화적으로 바꿉니다. 각 태그 클래스를 블록 (너비 : 100 %) 버튼으로 변경하여 모바일 장치를 클릭 할 수있게되었습니다.인라인 앵커 태그를 찾아서 PHP에서 수정하십시오.

<div>some random text <a> some other random text <a> and some more text </div> 

다른 사람들로부터 그 인라인 링크를 추출하고 그들에게 다른 클래스를 제공 할 수있는 방법이 있나요 : 문제는 링크의 일부는 내부 텍스트 있다는 것입니다. 그것이 될 것입니다 수행하는 방법

내 생각 : 단어의 n 개의으로 둘러싸여 있으며, 같은 컨테이너 요소의 자녀된다

-links.

일부 링크는 컨테이너로 간주해서는 안되는 강하고 스팬 (span) 태그로 둘러 쌀 수 있습니다.

다른 아이디어가 있습니까?

최저

, 마르티는

+1

정지가 simple_html_dom 라이브러리를 사용하여 DOMXPath'와'DOM''를 사용 :이 스레드에서 나는 당신이 sometings 도움 수 있다고 생각합니다. 둘 다 PHP 코어의 일부입니다. 이 주제에 대해 말하기는 어렵습니다. 예를 들어 인라인 링크조차도 문장의 끝에있을 수 있기 때문에 100 % 안전한 방법은 없다고 생각합니다. 당신은 그것으로 놀고 당신의 입력 데이터에 맞는 타협을 찾아야합니다. – hek2mgl

+0

왜 simple_html_dom을 피해야합니까? 속도 차이가 있습니까? 사용하기 쉬운 simple_html_dom을 찾았습니다. 주요 주제로 ... 예, 링크가 컨테이너의 시작/끝 부분에있을 수 있음을 알고 있습니다. 하지만 한 번 시도해 볼만한 아이디어가 있다고 생각했습니다. 코드는 예를 들어 태그의 한쪽 또는 다른 쪽 끝에 3 단어가 있는지 계산해야합니다. –

+0

simple_html_dom은 PHP로 작성되었으며 PHP 코어는 C로 작성되었습니다. 상당한 성능 차이가있을 것으로 예상되지만 테스트하지는 않았습니다. 더 중요한 것은'xpath'와'DOM'이 잘 정의 된 표준이라는 사실입니다. – hek2mgl

답변