Précédent   Forum des professionnels en informatique > PHP > Langage > Fonctions
Fonctions Forum d'entraide sur les fonctions PHP. Avant de poster -> FAQ fonctions et Sources diverses
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 24/10/2011, 15h47   #1
Nouveau Membre du Club
 
Inscription : juin 2010
Messages : 116
Détails du profil
Informations forums :
Inscription : juin 2010
Messages : 116
Points : 28
Points : 28
Par défaut Problème de communication entre deux fonctions

Salut, mon but c'est après avoir extrait une url d'un texte j'ouvre l'url et j'extrais le <title> de la page et je le met en titre d'url ma fonction marche trop bien pour toute url là voici
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
	function parseComment($text)
{  
	// $text = strip_tags($text);
	$pattern = '/(((ht|f)tp(s?):\/\/)|(www\.[^ \[\]\(\)\n\r\t]+)|(([012]?[0-9]{1,2}\.){3}[012]?[0-9]{1,2})\/)([^ \[\]\(\),;"\'<>\n\r\t]+)([^\. \[\]\(\),;"\'<>\n\r\t])|(([012]?[0-9]{1,2}\.){3}[012]?[0-9]{1,2})/i';
	$text = preg_replace_callback($pattern,
		create_function(
			'$matches',
			'return getUrlTitle($matches[0]);'
		), $text);
	return $text;
}
function getUrlTitle($url)
{
	$paged = fopen($url, "r" );
	$x = 0;
	$page = '';
	if ($paged) {
		while (!feof($paged) && ($x < 10)) {
			$page .= fread($paged, 8192);
			$x++;
		}
		fclose($paged);
	}
 
	preg_match("/<title>[nrs]*(.*)[nrs]*<\/title>/", $page, $title);
 
	if (isset($title[1])) {
		if ($title[1] == '') {
			return $url;
		}
 
		$title = $title[1];
		return '<a href="' . $url . '">' . trim($title) . '</a>';
	} else {
		return $url;
	}
}
si je fais
Code :
echo parseComment("Mon site préféré est  http://www.developpez.net");
j'aurai comme résultat mon site préféré est Forum des professionnels en informatique
par contre si j'essaye avec ce link
Code :
http://www.manga-sekai.com/f,1,hello
j'ai un message d'erreur fopen ne peut pas ouvrir http://www.manga-sekai.com/f !! oui ça s'arrête à f !!
mais ce qui est plus bizarre c'est que si je teste la première fonction sans faire un return avec la deuxième fonction j'ai tout mon lien (qui est censé passer à la deuxième fonction Donc c'est Ok )
et quand je teste sur la deuxième fonction (avec un lien en entrée ) ça marche à merveille
donc le problème n'est ni de la première fonction parseComment ni de la deuxième getUrlTitle .. Sauvez moi !!
AyManoVic est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h58.


 
 
 
 
Partenaires

Hébergement Web