php – 如何在现有数组中追加数据而不覆盖整个数组
发布时间:2020-12-13 22:10:19 所属栏目:PHP教程 来源:网络整理
导读:这是我的代码,在这段代码中,我通过函数read_from_json读取现有数组,该函数将 JSON转换为数组,现在从远程数据中获取新数据,因此我必须将这些数据附加到现有数组中而不覆盖整个数据阵列.就像我获取一个id一样,它使用in_array函数进行搜索,如果找不到,则向其发
这是我的代码,在这段代码中,我通过函数read_from_json读取现有数组,该函数将
JSON转换为数组,现在从远程数据中获取新数据,因此我必须将这些数据附加到现有数组中而不覆盖整个数据阵列.就像我获取一个id一样,它使用in_array函数进行搜索,如果找不到,则向其发送消息,然后将唯一的特定条目附加到现有数组.由于foreach迭代存在一个问题,所以它会覆盖所有数组,我还能做些什么.请看一下这段代码:
$read_data = $this->read_from_json( 'xyz.json' ); foreach ( $projects_id_tickcamp as $tick_id => $base_id ) { if ( !$this->in_array( $base_id['base_id'],$read_data ) ) { echo '<b>do post message function for ' . $tick_id . ' ' . $base_id['base_id'] . '</b><br />'; $i = count( $read_data ); while ( $i >= count( $base_id['base_id'] ) ) { echo 'post message start' .'<br />'; $i++; break; $projects_id_tickcamp[$tick_id]['message_id'] = 1; } //echo 'posted message id of ' . $base_id['basecamp_id'] . '<br />'; } else { echo 'do nothing' . '<br />'; //return false; } } //echo 'write data if id similar' . '<br />'; $this->write_to_json( 'xyz.json',$projects_id_tickcamp ); return $projects_id_tick; 上面代码的输出如下: Array ( [125434] => Array ( [base_id] => 1306755 ) [127354] => Array ( [base_id] => 1287834 ) ) 如果从远程获取新的id,则id仅在数组的最后位置写入. 解决方法
你有几个选择:
> array_push() 祝好运! (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |