begin process at 2012 05 31 09:12:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Général

 > 

Rechercher des valeurs dans un texte et leurs executer une fonction


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Rechercher des valeurs dans un texte et leurs executer une fonction

vendredi 3 novembre 2006 à 18:41:49 | Rechercher des valeurs dans un texte et leurs executer une fonction

taxidogkiller

Bonjour,

j'ai céé un systéme qui comme sur skyblog permet de créer des texte dégradés, j'ai créé le formulaire ( le dégradé s'y inscrit : [degrade = couleur1|couleur2]le texte[/degrade] ) j'ai créé la fonction php qui créé le dégradé ( qui s'appelle de cette facon : texteDegrade2( "le texte à mettre en dégradé","couleur1|couleur2" ) comment puis-je faire pour trouver les textes à mettre en dégradé dans une variable contenant le texte complet du formulaire et comment puis-je leurs éxécuter la fonction ?

Merci d'avance !
vendredi 3 novembre 2006 à 19:15:41 | Re : Rechercher des valeurs dans un texte et leurs executer une fonction
samedi 4 novembre 2006 à 15:00:19 | Re : Rechercher des valeurs dans un texte et leurs executer une fonction

taxidogkiller

J'avais pensé à la fonction preg_replace :

$textetest =  "le texte avant le dégradé [degrade=000000|ffff00|ff0000] texte au couleur de la belgique [/degrade] le texte apres le degrader";

preg_replace('#\[degrade=(.+)\](.+)\[/degrade\]#isU', 'texteDegrade2($1,$2)' , $textetest);

echo $textetest;

désolé si je ne suis pas trés clair, j'ai 14 ans et je débute dans php  !
 merci d'avance
dimanche 5 novembre 2006 à 02:03:42 | Re : Rechercher des valeurs dans un texte et leurs executer une fonction

alexscott

Réponse acceptée !
/* ** ** Cette fonction est modifiee pour retourner le resultat au lieu de l'afficher ** */ function texteDegrade($text,$starthtml,$endhtml) { $start=html2rgb($starthtml); $end=html2rgb($endhtml); $nb=strlen($text); if ($nb>0) { for ($i=0;$i<=$nb;$i++) { for ($j=0;$j<3;$j++) $buffer[$j] = $start[$j] + ($i/$nb)*($end[$j]-$start[$j]); $ret .= "".substr($text,$i,1)."";//ICI } } return($ret);//ET LA } /* ** ** Cette fonction est modifiee pour retourner le resultat au lieu de l'afficher ** */ function texteDegrade2($text,$couleurs) { $couleurs=strtolower($couleurs); $tablo=explode('|',$couleurs); $nb=sizeof($tablo)-1; $tablo2=explode('²',decoupe($text,$nb)); for ($i=0;$i<$nb;$i++) $ret .= texteDegrade($tablo2[$i],$tablo[$i],$tablo[$i+1]);//ICI return($ret);//ET LA } #MAIN $textetest = "le texte avant le dégradé [degrade=000000|ffff00|ff0000]] texte au couleur de la belgique [/degrade] le texte apres le degrader"; function moncallback($matches) { return(texteDegrade2($matches[2],$matches[1])); } $result = preg_replace_callback('#\[degrade=(.+)\](.+)\[/degrade\]#isU', 'moncallback' , $textetest); echo $result; -------------------------------- ----------EXPLICATIONS---------- -------------------------------- Tout d'abord preg_replace renvoie le resultat du remplacement c'est pour ca que ca te fait rien. Ensuite il faut pas remplacer le texte simplement puisque tu dois executer la fonction texteDegrade2 donc il faut utiliser une fonction de callback qui permet de le faire. J'ai du modifie les 2 fonctions de degrades pour qu'elle retourne plutot que de simplement affiche sinon tu te retrouverais a avoir le texte n'importe ou (tu peux tester ;) ) tu etais vraiment pas loin, persevere =) GL HF
dimanche 5 novembre 2006 à 18:29:59 | Re : Rechercher des valeurs dans un texte et leurs executer une fonction

taxidogkiller

Merci beaucoup pour ton aide !! ça marche nikel
dimanche 5 novembre 2006 à 18:30:00 | Re : Rechercher des valeurs dans un texte et leurs executer une fonction

taxidogkiller

Merci beaucoup pour ton aide !! ça marche nikel


Cette discussion est classée dans : fonction, texte, créé, rechercher, dégradé


Répondre à ce message

Sujets en rapport avec ce message

"mise en page" sur plusieurs cellules HTML [ par donben ] Bonjour à tous, je cherche à développer une fonction qui permettrait de séparer de manière "intelligente" ;-) un court texte sur plusieurs cellules de erreur: undefined index... [ par alanbraxe31 ] bonjour à tous!voici mon script:<input type="hidden" name="rechercher" value=" fonction message() et couleurs [ par starskyb ] bonjour,j'aurais souhaité savoir s'il etait possible de modifier la couleur du texte avec une fonction message("texte");mercistarsky htmlentities()+strip_tags() et bien plus [ par dorian53 ] Bonjour, Je suis à la recherche d'une fonction assez complexe qui me permettrait de traiter une chaine de texte envoyée par un éditeur wysiwyg d'un Apostrophes [ par sky_striker ] Bonjour j'enregistre une texte dans une BDD en appliquant systématiquement la fonction stripslashes() pour éviter les problémes.Au réaffichage du text Formatage de texte [ par juki_webmaster ] Bonjour à tous,Je developpe un petit projet baser en php/sql et j'aurais besoin d'un code (fonction toute faite) pour formater une variable (son conte SVP, probleme de fonction stripslashes [ par sema ] Hello,voila mon probleme, très très urgent dans mon code j'ai mis:$texte = nl2br ( stripslashes ($texte_inv)); quand je tourne mon site en local, ça f 1ere lettre en majuscule [ par Tilix ] Salut, Alors voilà, je voudrais mettre la 1ere lettre " d'un texte " (situé dans une variable) en majuscule. J'ai utilisé la fonction ucfirst(strtolo Sélectionner un texte dans un autre [ par ICIoBRa ] Salut a tousj'aimerai savoir quelle fonction faut-il utiliser pour sélectionner par exemple 3 caractères à partir du 2ème dans une chaine.Par exemple Récuperer un texte entre deux balises spécifiques [ par yvain91 ] Bonjour j'aurai besoin de récupérer du texte dans un fichier que j'ai ouvert avec la fonction fopen. Ce texte se trouve entre deux balises facilement


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,936 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales