如何访问PHP数组中字符串元素内的shortname、fullname字段值
操作步骤
你的原数组每个元素都是标准JSON格式字符串,只需要先对每个元素做JSON解码,再提取对应字段拼接即可,具体实现如下:
完整遍历输出所有元素的示例
// 这里替换成你自己的原数组变量 $origin_array = [ 20 => '{"shortname":"testvqweq","fullname":"test"}', 21 => '{"shortname":"bwqbdwqbwqeb","fullname":"qwbdwqbwq"}', 22 => '{"shortname":"wqdwqdwqdw","fullname":"dwqwqdwq"}', ]; foreach ($origin_array as $json_str) { // json_decode第二个参数传true,将JSON转为关联数组方便取值 $info = json_decode($json_str, true); // 拼接两个字段输出 echo "{$info['shortname']} {$info['fullname']}\n"; }
运行后输出结果:
testvqweq test bwqbdwqbwqeb qwbdwqbwq wqdwqdwqdw dwqwqdwq
单独提取指定下标的元素
如果你只需要输出下标为20的元素内容,可以不用遍历,直接处理:
$info = json_decode($origin_array[20], true); echo "{$info['shortname']} {$info['fullname']}"; // 输出结果:testvqweq test
额外优化建议
实际使用时可以加一层解码结果校验,避免JSON格式异常导致报错:
$info = json_decode($json_str, true); if (!empty($info) && isset($info['shortname'], $info['fullname'])) { echo "{$info['shortname']} {$info['fullname']}\n"; }
内容的提问来源于stack exchange,提问作者Louis
相关产品推荐
相关产品推荐

