加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

从APNS-php错误中检索令牌

发布时间:2020-12-13 16:11:23 所属栏目:PHP教程 来源:网络整理
导读:我正在尝试实现APNS- PHP,并发现在我的测试环境中我有一些无效的令牌(因为测试设备已转移到生产中). 我需要从数组中的序列化对象获取令牌ID,因为我想捕获这种情况并从数据库中删除无效令牌.我使用以下代码,但这不起作用: $aErrorQueue = $push-getErrors();
我正在尝试实现APNS- PHP,并发现在我的测试环境中我有一些无效的令牌(因为测试设备已转移到生产中).

我需要从数组中的序列化对象获取令牌ID,因为我想捕获这种情况并从数据库中删除无效令牌.我使用以下代码,但这不起作用:

$aErrorQueue = $push->getErrors();
    if (!empty($aErrorQueue)) {
        foreach($aErrorQueue as $error){            
            foreach($error['ERRORS'] as $err){
                $message .=  $err['statusMessage'] . " ";
                if($err['statusCode'] == 8){
                    $phones = Phone::getPhonesWithToken($error['MESSAGE']['_aDeviceTokens:protected'][0]);
                    Phone::setToken($phones[0]['id'],"");      
                }
            }   
        }
    }

问题是APNS_Message是$error [‘MESSAGE’]中的序列化对象,我不记得如何访问该对象中的令牌……

Var转储:

[“MESSAGE”]=>
object(ApnsPHP_Message)#9 (8) {
[“_bAutoAdjustLongPayload:protected”]=>
bool(true)
[“_aDeviceTokens:protected”]=>
array(1) { [0]=> string(64)
“018E4B9CB8CF73341CE4EBE7138E25E605CD80FB74B3A9701CE5CCA6D9363F3A”
} [“_sText:protected”]=> NULL
[“_nBadge:protected”]=> int(256)
[“_sSound:protected”]=> NULL
[“_aCustomProperties:protected”]=>
NULL [“_nExpiryValue:protected”]=>
int(604800)
[“_mCustomIdentifier:protected”]=>
string(17) “Message-Badge-004” }

解决方法

$错误[ ‘MESSAGE’] – > _aDeviceTokens [0]

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读