PHP在循环中添加缺少的键

杰米

我有以下数组。

    [rows] => Array
            (
                [0] => Array
                    (
                        [id] => 2704783858001796
                        [rowNumber] => 1
                        [expanded] => 1
                        [createdAt] => 2020-02-18T18:42:54Z
                        [modifiedAt] => 2020-02-18T22:07:36Z
                        [cells] => Array
                            (
                                    [0] => Array
                                        (
                                            [columnId] => 1676391784703876
                                            [value] => Approved
                                            [displayValue] => Approved
                                        )

                                    [1] => Array
                                        (
                                            [columnId] => 1225963934640004
                                            [value] => Submitted
                                            [displayValue] => Submitted
                                        )

                                    [2] => Array
                                        (
                                            [columnId] => 4979307467564932
                                            [value] => 2020-02-18
                                        )
                                    [3] => Array
                                        (
                                            [columnId] => 3203730339325828

其中[value]和[displayValue]并不总是显示。当我遍历数组时,我需要能够将[value]插入为空白或0。我不能让循环跳过键。

$j = count($dataID['rows']);
for ($i = 0; $i < $j; $i++) {
    array_push($dataRows, array_column($dataID['rows'][$i]['cells'], 'value'));
}
罗宾·吉利策

如果两个键都不存在,则此代码循环遍历的每个元素,$dataID['row']并遍历的每个元素$row['cells']

foreach( $dataID['rows'] as &$row ) {
  foreach( $row['cells'] as &$cell ) {
    if( !array_key_exists( 'value', $cell ) )  {
      $cell['value'] = null;
    }
    if( !array_key_exists( 'displayValue', $cell ) )  {
      $cell['displayValue'] = null;
    }
  }
}

这样的数组(short version of yours)

Array
(
    [rows] => Array
        (
            [0] => Array
                (
                    [cells] => Array
                        (
                            [0] => Array
                                (
                                )

                            [1] => Array
                                (
                                )

                        )

                )

        )

)

成为:

Array
(
    [rows] => Array
        (
            [0] => Array
                (
                    [cells] => Array
                        (
                            [0] => Array
                                (
                                    [value] => 
                                    [displayValue] => 
                                )

                            [1] => Array
                                (
                                    [value] => 
                                    [displayValue] => 
                                )

                        )

                )

        )

)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章