【问题标题】:php split array to string with commasphp将数组拆分为带逗号的字符串
【发布时间】:2013-05-07 09:27:35
【问题描述】:

我有一个数字数组

print_r($arr_usr_id[$key]); 

输出:“930933934”

现在我需要将其转换为 930,933,934 作为带逗号的字符串...

$newnumbers = (chunk_split($arr_usr_id[$key],3,",")); 

有效但 输出:“930,933,934”在最后一个数字后给我一个逗号

with str_split($arr_usr_id[$key], 3);我得到三个“数组”作为输出...

用逗号分隔数字(从:123145124984 到:123,145,124,984,...)的最佳方法是什么?

【问题讨论】:

    标签: php string split explode


    【解决方案1】:

    尝试将str_split()implode() 一起使用:

    $newnumbers = implode(',', str_split($arr_usr_id[$key], 3));
    

    <?php
    header('Content-Type: text/plain');
    
    $test   = '123456789';
    $result = implode(',', str_split($test, 3));
    
    var_dump($result);
    ?>
    

    演出:

    string(11) "123,456,789"
    

    【讨论】:

    • 有了这个我得到“930933934”:/
    • @Jim 在我这边是string(11) "930,933,934"。检查你的语法。
    • $numbers = $arr_usr_id[$key]; var_dump($numbers); output: string(3) "930" string(3) "933" string(3) "934" $newnumbers = implode(',', str_split($numbers, 3)); var_dump($newnumbers); output: string(3) "930" string(3) "933" string(3) "934"
    • 如果我手动输入数字 $numbers = "465444333";这应该可以工作...我的数组似乎有问题您的方法应该可以工作
    • @Jim 尝试检查数据库编码和 php 编码是否兼容。
    【解决方案2】:

    使用:

    number_format( $arr_usr_id[$key] );
    

    [编辑]

    文档:number_format

    【讨论】:

    • 可以使用here的文档。
    【解决方案3】:
    implode(',', str_split($arr_usr_id[$key], 3));
    

    substr(chunk_split($arr_usr_id[$key],3,","), 0, -1);
    

    也许? :)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-02-24
      • 2019-02-18
      • 2014-10-15
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多