Wie lässt man eine for-Schleife die Variable preg_match setzen ($ patternArray [$ i], $ inp, $ matches. $ I)? - PHP, Variablen, For-Schleife, Preg-Match

Ich möchte preg_match verwenden und es loopen und die Ausgabe sollte sechs $ matchs1 - $ matches6 sein

Der folgende Code führt zu: Nur Variablen können über den Referenzfehler übergeben werden

$patternArray = array($pK, $pGd, $pA, $pB, $pF, $pGF, $pAbo, $pGFK, $pGGK);

for($i = 0; $i < 6; $i++) {
preg_match($patternArray[$i], $input, $ucmatches . $i);
};

Ich habe es schon versucht

for($i=1;$i<6;$i++){
$m = ${"matches".$i};
preg_match($patternArray[$i], $input, $m);

};

Ergebnisse in

PHP Notice:  Undefined variable: matches1 in new.php on line 21
PHP Notice:  Undefined variable: matches2 in new.php on line 21
PHP Notice:  Undefined variable: matches3 in new.php on line 21
PHP Notice:  Undefined variable: matches4 in new.php on line 21
PHP Notice:  Undefined variable: matches5 in new.php on line 21
PHP Notice:  Undefined variable: matches in new.php on line 26
NULL

Antworten:

0 für die Antwort № 1

Sie haben wahrscheinlich versucht, so etwas zu tun:

$ucmatches = array(); // not necessary but good practice
for($i=0; $i<6; $i++){
preg_match($patternArray[$i], $input, $ucmatches[$i]);
preg_match($patternArray[$i], $input, $ucmatches[]); // no need to force indexes
};