繁体   English   中英

如何从此 PHP 数组中获取单个值

[英]How to get single value from this PHP array

例子

print_r($a) 

Array ( [Status] => 100 [RefID] => 12345678 [ExtraDetail] => {"Transaction":{"CardPanHash":"0866A6EAEA5CB08B3AE61837EFE7","CardPanMask":"999999******9999"}} ) 

我需要取CardPanMask

一个例子:我写了这段代码,但没有用

$cardnumber=$a[ExtraDetail]->Transaction->CardPanMask; 

$cardnumber 必须是 999999******9999 但是当我echo $cardnumber; 但它的空回注

您的ExtraDetail键实际上是一个 JSON 对象,如果不对其进行解码,就无法使用 PHP 轻松解析它。

您的$cardnumber变量应声明为:

$cardnumber = json_decode($a['ExtraDetail'])->Transaction->CardPanMask;

或者:

$cardnumber = json_decode($a['ExtraDetail'], true)['Transaction']['CardPanMask'];

如果您计划需要$a['ExtraDetail']键中的多个值,您可以考虑首先将整个值解码为它自己的值。

//you can use `true` as the second parameter of `json_decode()` if you want it to decode as an array instead of an object.
$transaction = json_decode($a['ExtraDetail'])->Transaction;
$cardnumber = $transaction->CardPanMask;

尝试这个:

$a = [
    'Status' => 100,
    'RefID' => 12345678,
    'ExtraDetail' => json_decode ('{"Transaction":{"CardPanHash":"0866A6EAEA5CB08B3AE61837EFE7","CardPanMask":"999999******9999"}}')
];

print_r($a['ExtraDetail']->Transaction->CardPanMask);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM