Extraire du texte entre 2 balises avec php

Résolu/Fermé
JessayeDeTrouver Messages postés 270 Date d'inscription mercredi 9 septembre 2009 Statut Membre Dernière intervention 4 mai 2012 - 18 juil. 2010 à 16:33
 Dj - 16 mars 2013 à 14:55
Bonjour, je cherche la solution qui me permettrai d'extraire du texte entre deux balises en php, et plus précisement les textes qui se situent dans ces 3 lignes :

<a href="/siteinfo/page1.html">Coco </a>
<a href="/siteinfo/page2.html">Riri </a>
<a href="/siteinfo/page3.html">Dada </a>

Donc comment faire pour récupérer les textes Coco, Riri, et Dada en php ?

Ps : je ne veux pas de javascript, car je veux le faire en php.

Merci d'avance, cordialement


A voir également:

6 réponses

avion-f16 Messages postés 19244 Date d'inscription dimanche 17 février 2008 Statut Contributeur Dernière intervention 17 avril 2024 4 496
18 juil. 2010 à 16:41
<?php
$source = '<a href="/siteinfo/page1.html">Coco</a>
<a href="/siteinfo/page2.html">Riri</a>
<a href="/siteinfo/page3.html">Dada</a>';

preg_match_all('#<a href="(.+)">(.+)</a>#i', $source, $liens);

$nb = 0;
foreach($liens[0] as $complet) {
    $url = $liens[1][$nb];
    $texte = $liens[2][$nb];

    echo 'Lien complet : '.htmlspecialchars($complet).'<br />';
    echo 'URL : '.$url.'<br />';
    echo 'Texte : '.$texte.'<br />';
    echo '<hr />';

    $nb++;
}
?>
18
JessayeDeTrouver Messages postés 270 Date d'inscription mercredi 9 septembre 2009 Statut Membre Dernière intervention 4 mai 2012 47
18 juil. 2010 à 16:46
Bonjour f16, merci, je vais essayer ça, je vais voir si ça marche.

+1 pour toi, euh non +100 plutot.


A+
4
JessayeDeTrouver Messages postés 270 Date d'inscription mercredi 9 septembre 2009 Statut Membre Dernière intervention 4 mai 2012 47
18 juil. 2010 à 17:08
Merci f16, grace à toi, le problème est résolu.

Quant au hollandais volant, je te remercie pour ton astuce qui était en faite la réponse à ma futur question.

Merci à tous les 2.
3
Bonjour,
Désolé de reprendre ce vieux sujet, mais il ressemble le plus à ce que je recherche...

Le Code est ok pour moi... Mais comment récupérer du texte se trouvant entre les liens ?
Exemple :
<a href="/siteinfo/page1.html">Coco</a>... Récupérer tout ici...
<a href="/siteinfo/page2.html">Riri</a>... Et ici...
<a href="/siteinfo/page3.html">Dada</a>... Et là...


Merci de voptre aide
Cordialement

DJ
2

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
le hollandais volant Messages postés 4998 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 23 décembre 2023 1 056
Modifié par le hollandais volant le 18/07/2010 à 16:43
Salut !
Faut le faire avec des regex :

<?php 
$nom = preg_replace('#<[.*]>([a-z]*)</[.*]>#i', '$1', $texte); 
?>


Où $texte est une ligne de code HTML.

(ce code recherchera ce qui se trouve entre des balises et le mettre dans la variable $nom.)
0
JessayeDeTrouver Messages postés 270 Date d'inscription mercredi 9 septembre 2009 Statut Membre Dernière intervention 4 mai 2012 47
18 juil. 2010 à 17:06
Merci à toi aussi
0