【发布时间】:2019-12-10 23:51:53
【问题描述】:
我编写了一个 php 脚本来使用 base64_decode() 函数解码一个值。我想将解析结果存储到不同的变量中。我该如何做到这一点??
$str = 'eyJ0eXAiO0IjoiNTAwMCIsInZhbGlkaXR5IjoiMzAifQjdubnmGHANidodnd';
$msisdn_64 = base64_decode($msisdn);
print_r($msisdn_64);
注意:为了隐私起见,$str 变量包含虚拟值,而且这不使用令牌来解码
上面的代码输出:
{"typ":"JWT","alg":"HS256"}{"sub":"456564685455","service":"000","created":20010809,"account_name":"Acct" ,"iss":"Acft","exp":false,"amount":"000","validity":"30"}}�.'���A˕X=·&|�L�0� “����
我尝试了类似 $msisdn[1]->sub 、 $msisdn[0]->sub 和 $msisdn->sub 到第二个对象中的值,但它不起作用。请帮忙
【问题讨论】:
-
问题是它实际上是一个base64编码的字符串......使用base64格式解码它并将其中的数据解析为不同的变量
-
$msisdn_64不包含有效的 JSON。看起来不仅两个或多个 JSON 对象被混合在一起,而且还有尾随的二进制垃圾。没有开箱即用的方法可以正确解析。 -
所以我要解决这个问题
标签: php arrays json laravel base64