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

PHP如何从数组内的JSON字符串中提取指定字段值?

提取JSON字符串中的字段值

没问题,这事儿其实很简单——你拿到的details是一个JSON格式的字符串,只需要用PHP的json_decode()函数把它转换成可操作的数组或对象,就能轻松提取里面的值了。

方法一:转换成关联数组(推荐,更直观)

// 先拿到JSON字符串
$detailsJson = $card->getData('details');

// 把JSON转成关联数组,第二个参数传true就是转数组
$detailsArray = json_decode($detailsJson, true);

// 直接通过键名提取对应的值
$cardType = $detailsArray['type'];           // 结果:"AE"
$maskedCC = $detailsArray['maskedCC'];       // 结果:"0005"
$expirationDate = $detailsArray['expirationDate']; // 结果:"05/2020"

方法二:转换成对象

如果习惯用对象的方式访问,也可以不传第二个参数(默认是false,转成对象):

$detailsJson = $card->getData('details');
$detailsObj = json_decode($detailsJson);

// 通过对象属性访问值
$cardType = $detailsObj->type;
$maskedCC = $detailsObj->maskedCC;
$expirationDate = $detailsObj->expirationDate;

额外提示:处理JSON解析失败的情况

万一JSON格式有问题(比如字符串损坏),json_decode()会返回null,建议加个错误判断避免报错:

$detailsArray = json_decode($detailsJson, true);

// 检查解析是否成功
if (json_last_error() !== JSON_ERROR_NONE) {
    // 这里可以加日志记录,或者给默认值
    $cardType = '';
    $maskedCC = '';
    $expirationDate = '';
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.11 09:29:31