J'ai construit la variable $ ligne selon les critères suivants:chaîne de php à la variable
foreach ($regex as $each){
$parts = explode('::',$each);
$pattern = '"/^'.$parts[1].'/i"';
$subject = '$row['.$parts[0].']';
$line .= 'preg_match'.'('.$pattern.','.$subject.')';
if (end($regex) != $each){
$line .= '&&';
}
}
J'ai une fonction qui appelle la ligne de $. Une fois appelé, écho $ ligne produit la sortie suivante:
preg_match("/^ab/i",$row[RG])&&preg_match("/^cd/i",$row[EX])
Je suis en train d'utiliser la variable $ ligne dans l'une des boucles et si preg_match ne fonctionne pas. Cependant, si je devais copier et coller la valeur de $ line dans l'instruction if cela fonctionne très bien. Toute contribution serait appréciée!
Pouvez-vous formater le code comme du code? Cela rendrait la lecture beaucoup plus facile. –
Aussi, que voulez-vous dire que vous avez une fonction qui appelle "la ligne $"? $ line semble être une chaîne, pas une fonction. –
Salut! Je voulais dire que je passe $ line à une fonction qui appelle mssql stockée proc renvoyant des valeurs pour $ row [RG] & $ row [EX] plus tard dans le script. Le problème est que preg_match ne fonctionne pas si la ligne $ est utilisée dans l'une des instructions if, cependant, si je devais copier et coller la valeur de $ line (ie preg_match ("/^ab/i", $ row [RG]) && preg_match ("/^cd/i", $ row [EX])) dans la même instruction if cela fonctionne très bien. Merci beaucoup pour votre aide! – Don