Preg_replace_callback 3 ligne 2 erreurs par ligne...

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Preg_replace_callback 3 ligne 2 erreurs par ligne...

par katagoto » 26 juin 2008, 10:06

mais sans le talent :twisted:
Ca part en flood,

Tu imagine si j'avais eu du talent en plus...j'aurais fait le C+++ :lol:

par mcorgnet » 26 juin 2008, 10:04

Je suis un génie :D
On dirait moi,

mais sans le talent :twisted:

par Berzemus » 26 juin 2008, 10:00

Je suis un génie :D
n'exagérons rien.. :roll:

par katagoto » 25 juin 2008, 15:26

Je suis un génie :D

Merci [Résolu]

par savageman » 25 juin 2008, 15:21

Oui, c'est complètement ça !

par katagoto » 25 juin 2008, 15:01

Bah comment tu veux que je lui indique :lol:

PS : je doit pas lui envoyé un array du type array($this, 'fonction') ? il me semble que j'ai vu ça quelque part, mais je ne savais pas à quoi ça correspondait...esce-bien ça ???

par Sékiltoyai » 25 juin 2008, 14:24

Ce ne sont pas des fonctions, ce sont des méthodes, privées qui plus est, tu ne pourras jamais les utiliser à partir de preg_replace_callback(), surtout si tu ne lui indiques pas l'objet.

par guilt92 » 25 juin 2008, 14:21

Je pense qu'il faut un return sur ces fonctions pour que cela fonctionne, quitte à mettre un return ""; pour voir si ca enlève l'erreur...

par katagoto » 25 juin 2008, 14:18

Si, elles éxistent :
	private function compile_condition1_if($matches){
		}

	private function compile_condition1_elseif($matches){
	               }

	private function compile_condition1_else($matches){
                 	}

par savageman » 25 juin 2008, 13:25

Tes fonctions compile_condition1_if(), compile_condition1_elseif() et compile_condition1_else() ne sont pas définies (n'existent pas quoi). =)

Preg_replace_callback 3 ligne 2 erreurs par ligne...

par katagoto » 25 juin 2008, 12:48

Bonjour à toutes et tous,

Voilà, je bosse sur des expression régulière et sur 3 lignes, j'ai 6 erreurs :
Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, 'compile_condition1_if', to be a valid callback in ***t\moteur.php on line 338

Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, 'compile_condition1_elseif', to be a valid callback in ***t\moteur.php on line 339

Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, 'compile_condition1_else', to be a valid callback in ***t\moteur.php on line 340

Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, 'compile_condition1_if', to be a valid callback in ***t\moteur.php on line 338

Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, 'compile_condition1_elseif', to be a valid callback in ***t\moteur.php on line 339

Warning: preg_replace_callback() [function.preg-replace-callback]: Requires argument 2, 'compile_condition1_else', to be a valid callback in ***t\moteur.php on line 340
Voilà mes trois lignes en questions :
	if($contenu = preg_replace_callback('#<if cond(?:ition)?="([^"]+?)"(?:\s)?>(.+)?(</if>)?#i', 'compile_condition1_if', $contenu)) $i++;
			if($contenu = preg_replace_callback('#<elseif cond(?:ition)?="([^"]+?)"(?:\s)?>(.+)?(</if>)?#i', 'compile_condition1_elseif', $contenu)) $i++;
			if($contenu = preg_replace_callback('#<else>(.+)?(</else>)?#', 'compile_condition1_else', $compile)) $i++;
Je penses pas que ça vienne de mes fonctions, mais, j'aimerais, que lorsque les expressions fasses un remplacement, ça incrémente $i...

Comment faire ?

D'avance merci pour vos réponses...