2011-01-10 17 views
5

Update1: पूर्ण स्रोत कोड के साथ:PHPQuery के साथ एक HTML टैग को कैसे निकालें?

$html1 = '<div class="pubanunciomrec" style="background:#FFFFFF;"><script type="text/javascript"><!-- 
google_ad_slot = "9853257829"; 
google_ad_width = 300; 
google_ad_height = 250; 
//--> 
</script> 
<script type="text/javascript" 
src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> 
</script></div>'; 

$doc = phpQuery::newDocument($html1); 
$html1 = $doc->remove('script'); 
echo $html1; 

स्रोत कोड इस से ऊपर है। मैंने यह भी पढ़ा है कि एक बग मौजूद है, http://code.google.com/p/phpquery/issues/detail?id=150 मुझे नहीं पता कि यह हल हो गया है या नहीं।

इस HTML से < स्क्रिप्ट> को हटाने के तरीके पर कोई भी संकेत?

शुभकामनाओं सहित,


हाय,

मैं PhpQuery का उपयोग कर एक HTML दस्तावेज़ से सभी < स्क्रिप्ट> टैग हटाने के लिए की जरूरत है।

मैंने किया है निम्नलिखित:

$doc = phpQuery::newDocument($html); 

$html = $doc['script']->remove(); 
echo $html; 

यह < स्क्रिप्ट> टैग और सामग्री निकालने से नहीं है। PhpQuery के साथ ऐसा करना संभव है?

शुभकामनाओं सहित,

उत्तर

10

यह काम करता है:

$html->find('script')->remove(); 
echo $html; 

यह काम नहीं करता: उत्तर के लिए

$html = $html->find('script')->remove(); 
echo $html; 
6

प्रलेखन ऐसा लगता है कि आप यह करते हैं जाएगा से:

$doc->remove('script'); 

http://code.google.com/p/phpquery/wiki/Manipulation#Removing

संपादित करें:

ऐसा लगता है कि PHPQuery में एक बग है की तरह, यह काम करता है इसके बजाए:

$doc->find('script')->remove(); 
+0

हाय, धन्यवाद। यह काम नहीं कर रहा है। कोई और सुराग? बेस्ट विनर्ड्स, –

+0

आपको लोगों के साथ परीक्षण करने के लिए अधिक जानकारी प्रदान करनी चाहिए। क्या आप एचटीएमएल की आपूर्ति कर सकते हैं? –

+0

मैंने कोड अपडेट किया है। कोई सुराग? बेस्ट विनर्ड्स, –

1

मैं उम्मीद कर रहा था कि यह कुछ आसान होगा पीक्यू ('टीडी [colspan = "2"]') -> हटाएं ('बी'); दुर्भाग्य से यह काम नहीं किया जैसा कि मैंने आशा की थी। मैं इस स्टैक ओवरफ्लो में भाग गया और सफलता के बिना उल्लेख किया गया था कि कोशिश की।

यह मेरे लिए काम करता है।

$doc = phpQuery::newDocumentHTML($html); 
// used newDocumentHTML and stored it's return into $doc 

$doc['td[colspan="2"] b']->remove(); 
// Used the $doc var to call remove() on the elements I did not want from the DOM 
// In this instance I wanted to remove all bold text from the td with a colspan of 2 

$d = pq('td[colspan="2"]'); 
// Created my selection from the current DOM which has the elements removed earlier 

echo pq($d)->text(); 
// Rewrap $d into PHPquery and call what ever function you want 
संबंधित मुद्दे