2012-07-11 21 views
40

Muszę wiedzieć, czy możliwe jest łączenie ciągi, jak następuje? a jeśli nie, jaka jest alternatywa tego?PHP string konkatenacja

while ($personCount < 10) { 
$result+= $personCount . "person "; 
} 

echo $result; 

powinien wyglądać 1 person 2 person 3 osoby etc ..

cann't użyć znaku + w konkatenacji więc jaka jest alternatywa?

+8

Właściwie używasz "alternatywy" w przykładowym kodzie. – lanzz

+0

prawdopodobny duplikat [Odsyłacz - Co oznacza ten symbol w PHP?] (Http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in-php) – mario

+2

Ciężko to znaleźć wierzyć, że nikt nie wskazał, że używasz "ludzi" zamiast "osoby". –

Odpowiedz

71

Po prostu użyj . do łączenia. I przegapiłeś przyrost o $personCount!

while ($personCount < 10) { 
    $result .= $personCount . ' people'; 
    $personCount++; 
} 

echo $result; 
7

Jeden krok (IMHO) lepiej

$result .= $personCount . ' people'; 
0

myślę, że ten kod powinien działać dobrze

while ($personCount < 10) { 
$result = $personCount . "people '; 
$personCount++; 
} 
// do not understand why do you need the (+) with the result. 
echo $result; 
+3

Zobacz, czy masz "" ludzi "zamiast" ludzi ". – PhoneixS

+0

Prawdopodobnie dostaniesz ładunek błędów z powodu tego, co wskazał @PhoneixS: niezgodne cytaty –

3
while ($personCount < 10) { 
    $result .= ($personCount++)." people "; 
} 

echo $result; 
3

to powinno być szybciej.

while ($personCount < 10) { 
    $result .= "{$personCount} people "; 
    $personCount++; 
} 

echo $result; 
+0

Dbaj o cokolwiek dowody, że' "{$ personCount} ludzie "' są szybsi niż '$ personCount. 'people''? W przeciwnym razie wydaje się to niczym dzikie spekulacje ... – Jake