2011-02-18 12 views
10

Yani sayfa birine sahip:başka bir sayfadan bir div elemanları alma (PHP)

<div id="div1">This is text one</div> 

<div id="div2">This is text two</div> 

<div id="div3">This is text three</div> 

Şimdi ben bunu nasıl, bu This is text one dönecek div birinin elemanlarını almak istiyor?

+1

yüzden, sadece php kullanarak başka bir sayfadan div1 içindeki metni tutmasını istiyorum? Bugün bir şey öğrenmek için – kjy112

cevap

25

Sen PHP'de DOMDocument kullanabilirsiniz:

<?php 

$doc = new DomDocument; 

// We need to validate our document before refering to the id 
$doc->validateOnParse = true; 
$doc->loadHtml(file_get_contents('http://google.com/bla.php')); 

var_dump($doc->getElementById('div1')); 

?> 
+0

+1. – Zack

+0

Teşekkürler, benim için çalıştı;), ama yanıt olarak işaretlemek için beklemeliyim ... – Thew

0
$string = file_get_contents($url); 
if (preg_match('/<div id="div1">([^<]*)<\/div>/', $string, $matches) > 0) { 
    echo $matches[1]; //This is text one 
} 
+2

html ayrıştırmak için düzenli ifadeler kesinlikle önerilmez. Bunun için DomDocument kullanabilirsin – teuneboon

+1

DomDocument benim için çalışmıyor, bu betik benim zamanımı kurtardı! Bu kullanıcı için bizimle çok yararlı bir pasaj paylaştığımız için oy verdim, teşekkür ederim! –

İlgili konular