2016-09-05 5 views
-4

表示カンマを表示した後にカンマを表示したいいけない:iは最後の値を表示した後、最後の値に

$len = count($boltpatterns); 
foreach ($boltpatterns as $key => $boltpattern) { 

    $st1=$boltpattern['BP']; 
    $st2='-'; 
    $pos=strpos($st1,$st2); 

    if($pos === false){ 

    } else { 
     echo $st1; 
     if($key != $len - 1) { 
      echo ','; 
     } 
    } 
} 

答えて

2

あなたは単にarray_column()implode()機能を使用することもできました。

array_column()はすべての 'BP'キーを1つの1次元配列に一覧表示します。

implode()は、この1次元配列$ arrをコンマで区切ってstringに変換します。

$arr = array_column($boltpatterns, 'BP'); 

echo implode(',', $arr); 
1

ループしたアイテムの数を追跡する新しい変数を追加するだけです。あなたはこのようにこれを行うことができます

$len = count($boltpatterns); 
$count = 1; 
foreach ($boltpatterns as $key => $boltpattern) { 
    $st1=$boltpattern['BP']; 
    $st2='-'; 
    $pos=strpos($st1,$st2); 
    if($pos === false){ 

    } else { 
     echo $st1; 
     if($count != $len) { 
      echo ','; 
     } 
    } 
    ++$count; 
} 
1

$valid_data = array(); 
foreach ($boltpatterns as $key => $boltpattern) { 
    if (false !== strpos($boltpattern['BP'],'-')){ 
     $valid_data[] = $boltpattern['BP']; 
    } 
} 
echo implode(", ", $valid_data); 

説明:ここでは、我々は新しい配列に表示する必要があるすべての有効な日付を集めます。そして、PHPの組み込み関数を使って表示します。

希望すると、これが役立ちます。

+0

ありがとうございます。 –

1
$arr = array_column($boltpatterns, 'BP'); 

echo rtrim(implode(', ', $arr), ', '); 

これは、@オブジェクトマニピュレータのコードの改良版です。rtrimは、末尾のカンマを削除します。

関連する問題