Bonjour tout le monde!
J'ai créer une petite fonction qui me permets de formater le texte que je souhaite. Elle remplace tout les caractères spéciaux etc.
Quand j'appelle cette fonction en dehors d'une autre fonction elle marche à merveille
Mais..quand j'appelle cette fonction depuis une autre fonction, elle ne s'exécute pas!!
Savez vous pourquoi je ne peut pas afficher le résultat de la fonction formatIt() depuis une autre fonction? J'ai pourtant déclarer la variable $formatedString en global, cela devrait pourtant la rendre accessible depuis une autre fonction non?
Merci d'avance!
Modifié par ghijselinck (07 Jun 2009 - 10:18)
J'ai créer une petite fonction qui me permets de formater le texte que je souhaite. Elle remplace tout les caractères spéciaux etc.
function formatIt($stringToFormat){
$table = array(
'Š'=>'S', 'š'=>'s', 'Ð'=>'Dj', 'd'=>'dj', 'Ž'=>'Z', 'ž'=>'z', 'C'=>'C', 'c'=>'c', 'C'=>'C', 'c'=>'c',
'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A', 'Å'=>'A', 'Æ'=>'A', 'Ç'=>'C', 'È'=>'E', 'É'=>'E',
'Ê'=>'E', 'Ë'=>'E', 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I', 'Ï'=>'I', 'Ñ'=>'N', 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O',
'Õ'=>'O', 'Ö'=>'O', 'Ø'=>'O', 'Ù'=>'U', 'Ú'=>'U', 'Û'=>'U', 'Ü'=>'U', 'Ý'=>'Y', 'Þ'=>'B','ß'=>'Ss',
'à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a', 'å'=>'a', 'æ'=>'a', 'ç'=>'c', 'è'=>'e', 'é'=>'e',
'ê'=>'e', 'ë'=>'e', 'ì'=>'i', 'í'=>'i', 'î'=>'i', 'ï'=>'i', 'ð'=>'o', 'ñ'=>'n', 'ò'=>'o', 'ó'=>'o',
'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ø'=>'o', 'ù'=>'u', 'ú'=>'u', 'û'=>'u', 'ý'=>'y', 'ý'=>'y', 'þ'=>'b',
'ÿ'=>'y', 'R'=>'R', 'r'=>'r',' '=>'-'
);
global $formatedString;
$formatedString = strtr($stringToFormat, $table);
}
Quand j'appelle cette fonction en dehors d'une autre fonction elle marche à merveille

$stringToFormat="Je suis une légende"; // texte à remplacer
formatIt($stringToFormat); // J'appelle la fonction
echo $formatedString; // Affichera "Je-suis-une-legende"
Mais..quand j'appelle cette fonction depuis une autre fonction, elle ne s'exécute pas!!

function uneAutreFonction(){
$stringToFormat="Je suis une légende"; // texte à remplacer
formatIt($stringToFormat); // J'appelle la fonction
echo $formatedString; // N'affiche rien ...
}
Savez vous pourquoi je ne peut pas afficher le résultat de la fonction formatIt() depuis une autre fonction? J'ai pourtant déclarer la variable $formatedString en global, cela devrait pourtant la rendre accessible depuis une autre fonction non?
Merci d'avance!

Modifié par ghijselinck (07 Jun 2009 - 10:18)