2011-01-15 8 views
1

Ich habe dies für Schleife:PHP for-Schleife Hinzufügen Komma

for($i=0; $i < $N; $i++) 
    $require_1 .= $require[$i] . " "; 

Ich möchte es ein Komma am Ende des ersten Wortes zu setzen, wenn es zwei Worte in der Zeichenfolge. Wenn es jedoch nur 1 Wort in der Zeichenfolge gibt, möchte ich es in Ruhe lassen.

Ich verstehe, ich muss eine if-Anweisung verwenden, basierend auf $i. Ich bin mir jedoch nicht sicher, wie ich das mache.

+0

Was enthält '$ required'? Wo sind die Wörter? –

Antwort

2

das ein Trick ich viel verwenden, ist zu Zeichenketten wie diese zu machen,

$require_1 = ""; 
for ($i = 0; $i < $N; $i++) { 
    if ($require_1 == '' || $require_1 == '&') { 
     $require_1 .= $require[$i]; 
    } 
    else { 
     $require_1 .= ', '.$require[$i]; 
    } 
} 

bearbeiten - hinzugefügt eine weitere Bedingung für ‚&‘ char

+0

Danke, funktionierte auch mit Leerzeichen '&' und was nicht. – Dean

4
$require_1 = implode(', ', $require); 

Wird dies tun? Sie stellt ein Komma und ein Leerzeichen nach jedem Element

0
for($i=0; $i < $N; $i++) { 
    $require[$i] = explode(' ', $require[$i]); 
    $require[$i] = implode(', ', $require[$i]); 
    $require_1 .= $require[$i] . " "; 
} 

Dies wird jede Zeichenfolge aufteilen und jedes Wort Kommas hinzufügen.

+0

Danke, aber es behandelt '&' als ein Wort. Wie kann ich die Platzierung eines Kommas nach & stoppen? EDIT: Es setzt auch ein Komma nach jedem Leerzeichen. Also sagen, ich habe Test (testing) es entspricht Test (testing). – Dean

Verwandte Themen