在最后一个结果处停止逗号分隔

Ala*_*lan 1 php arrays

我有一个存储在变量中的数组$data,看起来像这样:

["data"]=>
    ["rows"]=>
    array(30) {
      [0]=>
      array(2) {
        [0]=>
        string(10) "2016-08-15"
        [1]=>
        int(3)
      }
      [1]=>
      array(2) {
        [0]=>
        string(10) "2016-08-16"
        [1]=>
        int(18)
      }
      [2]=>
      array(2) {
        [0]=>
        string(10) "2016-08-17"
        [1]=>
        int(5)
      }
      [3]=>
      array(2) {
        [0]=>
        string(10) "2016-08-18"
        [1]=>
        int(3)
      }
      [4]=>
      array(2) {
        [0]=>
        string(10) "2016-08-19"
        [1]=>
        int(11)
      }
      [5]=>
      array(2) {
        [0]=>
        string(10) "2016-08-20"
        [1]=>
        int(5)
      }
Run Code Online (Sandbox Code Playgroud)

我尝试从30个条目中获取值并添加逗号和空格:

                    <?php
                    foreach ($data->data->rows as $data) {
                        if (isset($data[1])) {
                            echo $data[1] . ', ';
                        }
                    }
                    ?>
Run Code Online (Sandbox Code Playgroud)

结果如下:

[18, 5, 3, 11, 5, 7, 9, 7, 17, 6, 3, 3, 1, 19, 13, 7, 3, 4, 10, 3, 5, 5, 7, 4, 2, 1, 8, 10, 6, 9, ],
Run Code Online (Sandbox Code Playgroud)

但是在最后一次输入后我不想要逗号和空格.我怎样才能做到这一点?

u_m*_*der 5

我建议你这个解决方案:

$values = [];
foreach ($data->data->rows as $data) {
    if (isset($data[1])) {
        $values[] = $data[1];
    }
}
echo implode(',', $values);
Run Code Online (Sandbox Code Playgroud)

此外,如果你想获得json字符串 - 更好地使用json_encode:

echo json_encode($values);
Run Code Online (Sandbox Code Playgroud)


小智 5

只需使用implodearray_column:

$prepared_array = array_column($data, 1);

$result = array_implode(', ',$prepared_array);
Run Code Online (Sandbox Code Playgroud)