Extraire du texte entre 2 balises avec php

Résolu
JessayeDeTrouver Messages postés 270 Date d'inscription   Statut Membre Dernière intervention   -  
 Dj -
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 19252 Date d'inscription   Statut Contributeur Dernière intervention   4 507
 
<?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   Statut Membre Dernière intervention   47
 
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   Statut Membre Dernière intervention   47
 
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
Dj
 
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   Statut Membre Dernière intervention   1 057
 
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   Statut Membre Dernière intervention   47
 
Merci à toi aussi
0