2015-02-23 3 views
0

я могу получить значение в тег «р», используя ниже PHP кодаПолучить значение «р» тега с помощью preg_match в PHP

$pattern ='/<p>(.*)<\/p>/'; 
$str = '<div class="sample"><p>Hi welcome</p></div>'; 
preg_match($pattern, $str, $matches); 
print_R($matches); 

Но я имею другой HTML код which've больше места после того, как тег разрыва тега , Вот мой код.

<div class="boxes-box-content"><p>Call: (+61 3) 8639 9000<br /> 
<a href="mailto:[email protected]">[email protected]</a><br /> 
    28-32 Elizabeth Street, Melbourne<br /> 
    VIC 3000, Australia</p> 
</div> 

В приведенном выше коде больше места после тега перерыва. Поэтому я не могу получить значение тега 'p'. Есть ли какой-либо другой метод для получения значения тега 'p'.

Я хочу, чтобы получить результаты, как

по телефону: (+61) 3 8639 9000
[email protected]
28-32 Elizabeth Street, Melbourne
VIC 3000, Австралия

+0

http://php.net/manual/en/class.domdocument.php – PeeHaa

+0

Я хочу сделать это, используя только preg_match() – phponwebsites

+2

ПОЧЕМУ?!?! ........ – PeeHaa

ответ

2

Лучший способ проанализировать HTML - это использовать PHP DOM Class. Хотя, если вы все еще хотите использовать preg_match в этом можно использовать под регулярное выражение (добавлено) и проверить,

$pattern = "/<p>(.*)<\/p>/s"; 

Woking DEMO.

+0

Превосходно .. Спасибо .. Он дает правильный ответ ... – phponwebsites

+0

@phponwebsites Вы должны принять ответ, если он вам поможет –

Смежные вопросы