我正试图实施APNS-PHP,并发现在我的测试环境中,我有一些无效令牌(随着测试设备转移到产品)。从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在$错误[“消息”]序列化对象,我不记得如何访问令牌在对象...
瓦尔转储:
[ “MESSAGE”] => 对象(ApnsPHP_Message)#9(8){ [ “_bAutoAdjustLongPayload:保护”] => 布尔(真) [“_aDeviceTokens:protected”] => 阵列(1){[0] =>串(64) “018E4B9CB8CF73341CE4EBE7138E25E605CD80FB74B3A9701CE5CCA6D9363F3A” } [ “_sText:保护”] => NULL [ “_nBadge:保护”] => INT(256) [“_sSound:保护 “] => NULL [” _aCustomProperties:保护 “] => NULL [” _nExpiryValue:保护 “] => INT(604800) [” _mCustomIdentifier:保护 “] => 串(17)” MESSAGE-徽章-004" }
我刚刚意识到!一个愚蠢的错误,并表明我有一段时间没有使用PHP! – 2011-04-04 17:19:17