Problème avec eregi () [TITRE MODERE CAR PEU EXPLICITE]

Signaler
Messages postés
90
Date d'inscription
lundi 25 juillet 2005
Statut
Membre
Dernière intervention
18 janvier 2006
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
salut tous le monde ,
pour avoire ce qui est entre HREF=" et " TITLE= j'utilise ce code mais ca ne marche pas pourier vous me dire pourquoi merci d'avance

<?
$fp = fopen("o.php","r");


while (!feof($fp)) {
$page .= fgets($fp, 4096);
}


$titre = eregi('HREF="(.*)" TITLE=',$page,$re);


echo $re[0];


fclose($fp);


?>

4 réponses

Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
8
Salut,

deux-trois petits trucs :

* pourquoi imposer le TITLE= après HREF ? Les attributs d'une balise HTML peuvent être données dans n'importe quel ordre (voir même omis pour certain...)

* [^"] = "Tout sauf un guillemet"

* $re[0] contient la chaine complète. $re[1] contient le contenu de la première parenthèse capturante, ($re[2] la suivante lorsqu'on lit les parenthèses ouvrantes de gauche à droite dans la regexp. Et ainsi de suite...)

* preg_match est réputée plus rapide... après, j'ai jamais testé...

* preg_match_all permet d'avoir TOUTES les occurence d'une chaîne (et non simplement la première comme ereg et preg_match)

Ce qui donnerais :

$titre = preg_match[_all]('@HREF="([^"])"@im',$page,$re);

// avec preg_match
echo $re[1];

// avec preg_match_all
foreach( $re[1] as $r ) {
echo $r;
}

Voili-voilou...

A+
Messages postés
9433
Date d'inscription
mardi 9 octobre 2001
Statut
Membre
Dernière intervention
13 avril 2007
8
Tu vas nous reposer tes problèmes combien de fois ?

<hr size="2" width="100%"><li>Entraide, dépannage et vulgarisation informatique : Mon site de vulgarisation informatique</li><li>Codes-php.net</li>
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Ouais, je supprime le 1er message du coup...
Et merci de conserver des titres clairs :-)
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
23
Ah, et merci de rester poli...rapport à cet 1er message. Il n'était en effet pas très clair et peu compréhensible...