PHP数组以逗号分隔列表

时间:2012-08-08 18:17:00

标签: php arrays csv

我有一个正在数组中解析的数据库中的项目列表

Array
(
    [0] => Array
        (
            [dToken] => 731fea87ea9dc61f16e93f1ad2b964bf1926633acac151c1853ab91ea0465228
            [0] => 731fea87ea9dc61f16e93f1ad2b964bf1926633acac151c1853ab91ea0465228
        )

    [1] => Array
        (
            [dToken] => d890a5002f7da8bd35f6cae50e597d6f11554b26ba686bc7314afe77d1b36a61
            [0] => d890a5002f7da8bd35f6cae50e597d6f11554b26ba686bc7314afe77d1b36a61
        )

)

我需要获取所有dTokens并将它们列在一个变量中,每个dToken用逗号分隔,除了列表中的最后一个。

foreach($result as $device['dToken'] => $token){
    //$devices = $token['dToken'];
    print_r($token['dToken']);
}

请帮忙吗?

4 个答案:

答案 0 :(得分:5)

您可以构建字符串:

$cvsString = '';
$delimiter = '';
foreach($result as $device){
    $cvsString.= $delimiter . $device['dToken'];

    $delimiter = ',';
}

var_dump($cvsString);

或者您可以先构建数组:

$cvsArray = array();
foreach($result as $device){
    $cvsArray[] = $device['dToken'];
}

var_dump(implode(',', $cvsArray));

答案 1 :(得分:3)

你就在那里。

$tokens = array();
foreach($result as $device){
    $tokens[] = $device['dToken'];
}
echo implode(',', $tokens);

答案 2 :(得分:2)

要回答与图块对应的问题(将数组转换为带分隔符的列表),请使用implode函数。要生成CSV,我会google php CSV,我相信已经有很多功能可以做到。

答案 3 :(得分:-1)

callback = function($row){
    return $row['dToken'];
}

implode(",",array_map(callback,$result));