[Tableaux] Sortir du foreach sur le parse d'une url relative
Bonjour,
On ma suggérer une solution ( merci à ska_root :wink:
http://www.developpez.net/forums/viewtopic.php?t=469682 )pour parser une url relative, sur cette solution
le résultat est renvoyé dans un tableau car il y a plusieurs url à tester
Mon pb est que j'ai une seule url à tester à la fois et le tableau est donc pas nécessaire et je sais pas comment re-coder ce code pour un seul url
Exemple du code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
<?PHP
// tableau de fin d'url interdite
$interdits = array(
'.free.fr',
'.easyrencontre.com',
'.wanadoo.fr',
'.carrefourinternet.com.fr',
'.carrefourinternet.com');
// modification en patterns
foreach ($interdits as $cle => $valeur) {
// on echappe les points et on ajoute le metacaractere "fin de ligne"
$interdits[$cle]=str_replace('.','\.',$valeur).'$';
}
// tableau d'url a tester
$exemple = array("http://www.montout.free.fr",
"http://www.montout.wanadoo.fr",
"http://www.montout.aol.com",
"http://www.montout.carrefourinternet.com.fr");
// pour chaque element de exemple
foreach ($exemple as $cle => $url) {
// pour chaque valeurs interdite
foreach ($interdits as $pattern) {
// si trouve pattern dans url
if(ereg($pattern,$url)) unset($exemple[$cle]);
}
}
// on affiche le tableau modifie
foreach ($exemple as $url) {
echo $url."<br/>";
} |
Il me retourne un tableau avec les url testés et ça fonctionne très bien, simplement j'aimerais qu'il ne
me retourne pas un tableau car j'aimerais tester 1 seule url.
j'aimerais faire ainsi
Code:
1 2 3 4 5 6
|
<?PHP
// url a tester
$url = "http://www.montout.free.fr";
$exemple = "$url";
?> |
Si c'est qu'un seul url à tester comment modifier le code ci-dessous
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
<?PHP
// pour chaque element de exemple
foreach ($exemple as $cle => $url) {
// pour chaque valeurs interdite
foreach ($interdits as $pattern) {
// si trouve pattern dans url
if(ereg($pattern,$url)) unset($exemple[$cle]);
}
}
// on affiche le tableau modifie
foreach ($exemple as $url) {
echo $url."<br/>";
}
?> |
Il faudrait que si l'interdit est trouvé dans l'url, qu'il affiche "pas bon url" le cas échéant affiche "bon url"
Par avance merci de votre aide
Cordialement
Yule