2016-03-29 2 views
-1

Допустим, у меня есть этот HTML как строка -срезанные элементы из HTML строки (PHP)

<div> 
lorem ipsum 
<p>dolor</p> 
</div> 

<hr> 

<ul> 
<li>value</li> 
<li>value</li> 
</ul> 

<a>read more</a> 
<a>read more</a> 

Я хочу, чтобы разделить HTML и принимать только то, что после HR элемента.

Затем я хочу разделить код слева на список и две ссылки.

В конце концов, я хочу, чтобы получить что-то вроде -

$list = "<ul><li>value</li><li>value</li></ul>" 

$link1 = "<a>read more</a>" 

$link2 = "<a>read more</a>" 

Может кто-нибудь помочь мне достичь этого?

+1

Покажите нам, что вы пробовали. – Epodax

+0

Вы хотите получить все теги или что ли? –

ответ

0
  $str = "<div> 
      lorem ipsum 
      <p>dolor</p> 
      </div> 

      <hr> 

      <ul> 
      <li>value</li> 
      <li>value</li> 
      </ul> 

      <a>read more</a> 
      <a>read more</a>"; 

      $str = htmlentities($str); 
      $str = explode("&lt;hr&gt;", $str); 
      echo $str[1]; //ul+a 



      $str2 = explode("&lt;/ul&gt;", $str[1]); 
      echo $str2[1]; //a 
+0

Спасибо! Это было именно то, на что я надеялся :) – OriyanJ

+0

Любая идея о том, как разделить две ссылки? – OriyanJ

+0

Обновлено Но лучше использовать некоторый HTML-анализатор html php, например «PHP Simple HTML DOM Parser» – iamkdev

-1
<?php 
$string = '<div> 
lorem ipsum 
<p>dolor</p> 
</div> 

<hr> 

<ul> 
<li>value</li> 
<li>value</li> 
</ul> 

<a>read more</a> 
<a>read more</a>'; 

$cut = explode("<hr>", $string); 
echo $cut[1]; 
+0

Спасибо, действительно, я проделал работу – OriyanJ