2016-09-16 10 views
0

これをループ内でトリミングする他の方法はありますか?私はループと内部を持っている、私は最後のループ行をrtrimする必要がありますが、それは最後の右の文字列のすべての文字をすべて削除します。PHP:ループ内の最後の文字列をトリミングする方法

このメソッドを使用すると動作します。

$plus = ""; 
for($i=0; $i<6; $i++){ 
    $plus .= 'total'.$i."+"; 
} 
echo rtrim($plus,'+'); 
//output 
total0+total1+total2+total3+total4+total5 

しかし、私はループ内でそれをrtrimする必要があるのですか?何か理由が必要なので、

for($i=0; $i<6; $i++){ 
    $plus = 'total'.$i."+"; 
    echo rtrim($plus,'+'); 
} 
//output says 
total0total1total2total3total4total5 

//This should be like 
//total0+total1+total2+total3+total4+total5 
+2

ifステートメントをループ内に配置して、最後の要素のみトリムを実行します。 – Rizier123

+0

はい、なぜですか?最初の方法ではなく、2番目の方法でそれをする理由は何ですか? – AbraCadaver

+0

私はコードの束を持ってこれはネストされたループです私は外に行くことができないいくつかの他のコードは私がそれをトリムする必要があるなぜ私の外側ループthatsにあるので –

答えて

3

それは意味がありません。最後に+を入れたくない場合は、ループの後にrtrim()を入れてください。ただ、アレイとimplode()作成

:ここ

for($i=0; $i<6; $i++){ 
    $plus[] = 'total'.$i; 

} 
$plus = implode('+', $plus); 
2

trim()またはimplode()を必要とせずに別のアプローチのようになります。

$plus = ""; 
    for($i=0; $i<6; $i++){ 
     $plus .= 'total'. $i; 
     if($i < 5){ 
      $plus .= "+"; 
     } 
    } 
    echo $plus; 
1

はそれがお役に立てば幸いです。

for($i=0; $i<6; $i++){ 
    $plus .= 'total'.$i.'+'; 
    if($i == 5){ 
     echo rtrim($plus,'+'); 
    } 
} 
関連する問題