簡體   English   中英

最簡單的方法來打印PHP中的assoc數組列的逗號分隔符(來自MYSQL)

[英]Simplest way to print out comma seperated of an assoc array column in PHP (from MYSQL)

我有一個mysql fetch,它用數據庫中的列填充關聯數組。 列名稱之一是AMOUNT。 所以看起來像這樣:

Array ( [0] => Array ( [ID] => 259 [YEARMONTH] => 201105 [AMOUNT] => 54 [VALUE] => 12 ) [1] => Array ( [ID] => 259 [YEARMONTH] => 201106 [AMOUNT] => 32 [VALUE] => 34 ) )

我要做的就是回顯AMOUNT,如下所示:

54,32

這樣我就沒有尾隨逗號了。

有什么建議可以解決這個問題嗎? 謝謝 !

前提條件

  • $array包含所有行的數組。

foreach ($array as $row) {

    $newArray[] = $row['AMOUNT']; //Add it to the new array

}
echo implode(',',$newArray); //Implode the array and echo it out.

如果您使用的是PHP 5.3+,則以下內容也適用:

echo implode(",",array_map(function($a) { return $a["AMOUNT"]; }, $array));

由Mearlyn提供

更多

  • implode一個數組和一個定界符,並返回一個由'delimiter'分隔的數組值的字符串。

首先排列所有金額的數組,然后內implode結果。

做到這一點尾隨或標題逗號,然后用http://php.net/manual/en/function.rtrim.php (或http://php.net/manual/en/function.ltrim.php分別)

$a = '';
foreach ($test as $t)
    $a .= $t['AMOUNT'] . ',';
$result = rtrim($a, ',');

備擇方案

內爆的方法也是正確的,但是我的解決方案更快。

性能

在2個成員數組上進行了10000000次運行測試。

真相建議的解決方案需要171秒才能運行,米林建議的解決方案需要358秒! 秒運行,我的解決方案只需要18秒!

我用pastebin.com/fKbxfpy1來獲得提到的時間...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM