2009-10-06 11 views
1

bonjour je suis à la recherche de toutes les instances de balises avec la classe EXACT « bonjour » à l'aide de simple_html_domsimple_html_dom - problème non couvert dans le manuel

foreach($html->find('.hello')as $found 

Ce qui précède ne pas tout à fait le faire parce que cela me donne aussi des cours comme "Bonjour le monde". Il est simple de compter et de lister l'élément correct à partir du tableau, mais le code html source qui est analysé change, ce qui n'est pas pratique.

Des idées pour trouver un terme exact pour la classe?

Merci

Répondre

2

Essayez ceci:

foreach($html->find('[class=hello]') as $found) 

Si cela ne fonctionne pas, vous pouvez toujours faire cette approche moins élégante, mais travaille toujours:

foreach($html->find('.hello') as $found) 
{ 
    if ($found->class != 'hello') 
     continue; 

    //do stuff here 
} 

Vous pouvez trouver plus sur à propos de ce genre de choses sous le titre qui dit Comment trouver des éléments HTML? dans le manuel. Les sélecteurs d'attributs sont très puissants, voir ici:

[attribute]   Matches elements that have the specified attribute. 
[attribute=value] Matches elements that have the specified attribute with a certain value. 
[attribute!=value] Matches elements that don't have the specified attribute with a certain value. 
[attribute^=value] Matches elements that have the specified attribute and it starts with a certain value. 
[attribute$=value] Matches elements that have the specified attribute and it ends with a certain value. 
[attribute*=value] Matches elements that have the specified attribute and it contains a certain value. 
+0

Merci d'avoir fait cela. J'ai pris un moment pour répondre parce que l'ordinateur ne me laissait pas ajouter un commentaire ou donner une coche. –

Questions connexes