You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PHP CodeIgniter从数据库JSON数据中提取nama_field存入数组的方法

解决方案

你只需要初始化一个空数组存储结果,解码JSON后遍历提取nama_field字段存入即可,以下是可直接使用的代码:

方法1:使用默认对象格式操作

// 初始化空数组存储所有nama_field值
$nama_field_list = [];

$data_form = $this->perizinan_model->get_sub_field_form($id_jenis_izin)->result();

foreach($data_form as $data_field){
    $field_form = json_decode($data_field->field_form);
    // 遍历解码后的字段配置数组
    foreach ($field_form as $item) {
        $nama_field_list[] = $item->nama_field;
    }
}

// 调试时可输出验证结果
// var_dump($nama_field_list);

最终得到的$nama_field_list就是你需要的结果,内容为:["nama lengkap", "tahun lahir"]

方法2:转为关联数组操作(可选)

如果你习惯用数组格式操作数据,给json_decode传第二个参数true即可:

// 初始化空数组存储所有nama_field值
$nama_field_list = [];

$data_form = $this->perizinan_model->get_sub_field_form($id_jenis_izin)->result();

foreach($data_form as $data_field){
    // 第二个参数为true时返回关联数组
    $field_form = json_decode($data_field->field_form, true);
    foreach ($field_form as $item) {
        $nama_field_list[] = $item['nama_field'];
    }
}

可选优化:如果业务中存在field_form为空、JSON格式异常的场景,可以在解码后增加数组判断,避免报错:

$field_form = json_decode($data_field->field_form);
if (is_array($field_form)) {
    foreach ($field_form as $item) {
        $nama_field_list[] = $item->nama_field;
    }
}

内容的提问来源于stack exchange,提问作者ASHafizullah

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 23:27:01