2016-04-05 7 views
0

イムでforeachのクエリで最後のカンマを削除し、我々はここで私のデータベースからいくつかの値をエコーするforeachループを使用してPHPのmysqlの

echo $string='"paymentmethods":'; 
echo $string='"Bank":['; 
$sql2 = "SELECT * FROM paymentmethods where cid=587 "; 
$query = $this->db->query($sql2); 
foreach ($query->result() as $row){ 
     echo '{'; 
     echo $string = 'accname:'.$row->acc.',' ; 
     echo $string = 'country:'.$row->IBAN.',' ; 
     echo $string = 'Iban:'.$row->Bankname.',' ; 
     echo $string = 'Bankname:'.$row->Bankname.',' ; 
     echo $string = '},'; 
} 
echo $string = '],'; 

"paymentmethods":"Bank":[{accname:0034430430012,country:AE690240002520511717801,Iban:ARABIC BANK NAME,Bankname:ARABIC BANK NAME,},{accname:0506796049,country:DE690240002520511717801,Iban:ARABIC BANK NAME,Bankname:ARABIC BANK NAME,},] 

が見る削除することができますどのようにカンマが、最後のコンマによってそれらのそれぞれをseperating名前の終了後にカンマが繰り返されます。括弧の末尾の後ろにも表示されます

+2

出力と期待される出力を確認できますか?あなたが求めているものを正確に伝えるのは非常に難しいです! – Lachie

+0

文字列から最後の文字を削除するには、substrを簡単に使うことができます: '$ string = substr($ string、0、-1);' – kainaw

+4

自分で 'json_encode'をやっているようですね?組み込みの 'json_encode'を使って配列をエンコードしてみてください。 http://php.net/manual/en/function.json-encode.php –

答えて

0

コンマはコード内に記述されています。これに行を変更します。

// same as above 
echo $string = 'Bankname:'.$row->Bankname. ; 
     echo $string = '}'; 
} 
echo $string = ']'; 
0

これを行うための一般的な方法は、この方法を行うことです。

$sep = ''; 
$result = ''; 
foreach($myarray as $value) { 
    $result .= $sep.$value; 
    $sep = ','; 
} 

この方法は、あなたが先頭または終了コンマを持っていません。 しかし、コメントで言うように、あなたは自分で "json_encode"をやっています...代わりにjson_encode/decodeを使うべきです。

関連する問題