Autor | Zpráva | ||
---|---|---|---|
ThomasT Profil * |
#1 · Zasláno: 30. 1. 2013, 13:11:07
Ahoj,
narazil jsem na jednu drobnost, které moc nerozumím. Běžně používám php funkci substr(), ale teď jsem narazil na situaci, kdy mi nefunguje v cyklu foreach foreach($tmp_multi_type as $category){ $tmp_IN[$category] = ""; foreach($this->$category as $value){ $tmp_IN[$category] .= $value.", "; } echo $tmp_IN[$category]."<br>"; $tmp_IN[$category] = substr($tmp_IN[$category], 0, -1); echo $tmp_IN[$category]."<br>"; } echo $tmp_IN[$category]."<br>"; $tmp_IN[$category] = substr($tmp_IN[$category], 0, -1); echo $tmp_IN[$category]."<br>"; Výpisy čtyř ech vypadají takto: echo #1 -> czech, english, french, slovak, echo #2 -> czech, english, french, slovak, echo #3 -> czech, english, french, slovak, echo #4 -> czech, english, french, slovak Proč funkce substr() funguje až mimo b]foreach[/b]? Děkuji za rady. T. |
||
Str4wberry Profil |
#2 · Zasláno: 30. 1. 2013, 13:27:45
Není to přímo odpověď na otázku, ale co použít
implode ?
$pole = array("jedna", "dva", "tri"); echo implode(", ", $pole); |
||
ThomasT Profil * |
#3 · Zasláno: 30. 1. 2013, 13:41:14
:-) proč to dělat jednoduše, když to složitě co?
Jj, implode je řešení, ani mi to nenapadlo. Díky PS: Ale stejně by mě zajímalo, proč ve foreach nefunguje substr() (nebo alespoň v toto případě). |
||
Str4wberry Profil |
#4 · Zasláno: 30. 1. 2013, 13:52:32
To je vcelku prosté. Oddělujete poslední znak, ale potřebujete oddělit poslední dva znaky, protože ten poslední je mezera, zatímco čárka je předposlední (tak činí až druhé použití
substr u na řádku 12).
|
||
Časová prodleva: 11 let
|
0