У меня есть метод, который получает все устройства, которые имеют определенный идентификатор.Для каждого UID устройства я пытаюсь отправить APN (Apple Push Notification) с помощью класса easyAPN.
Метод, в котором возникла проблема: $ apns-> newMessage ($ id);
Кажется, мне кажется, что я не передаю действительное целое число для $ id.
$ id - это массив, аналогичный Array ([0] => 1)
У меня также естьпопытался передать только значение массива, например, $ apns-> newMessage ($ id [0]).
Независимо от того, что я делаю .. Я продолжаю получать эту ошибку ...
"Примечание: идентификатор TO не был целым числом. 1) Messages_model :: send_apns -> Файл: sendMessage.php (строка 28) 2) APNS :: queueMessage -> Файл: messages_model.php (строка 195) 3) APNS :: _ triggerError-> Файл: class_APNS.php (строка 599) "
Вот мой метод ... пожалуйста, дайте мне знать, где я ошибся с $ id.
function send_apns($data)
{
include 'apn_classes/class_DbConnect.php';
include 'apn_classes/class_APNS.php';
$message = new Messages_model();
$db = new DbConnect();
$db->show_errors();
$apns = new APNS($db);
//get uid's for aid
$sql = "SELECT `devices`.`uid` FROM `devices` WHERE `devices`.`aid` = '".$data['target']."'";
//echo $sql;
$query = mysql_query($sql);
if(mysql_num_rows($query))
{
while($uid_data = mysql_fetch_array($query))
$uids[] = array(
"uid" => $uid_data['uid']
);
}
//make sure there is a uid
if(!empty($uids))
{
//check the device apn pid
foreach($uids as $uid)
{
$sql = "SELECT `apns_devices`.`pid` FROM `apns_devices` WHERE `apns_devices`.`deviceuid` = '".$uid['uid']."'";
//echo "$sql";
$query = mysql_query($sql);
if(mysql_num_rows($query) > 0)
{
while($pid_data = mysql_fetch_array($query))
{
$pids[] = array(
"pid" => $pid_data['pid'],
);
if(!empty($pids))
{
foreach ($pids as $pid)
{
$id = array($pid['pid']);
print_r($id);
//Send APN
$apns->newMessage($id[0]);
$apns->addMessageBadge(128);
$apns->addMessageAlert($data['message']);
$apns->addMessageSound('chime');
//$apns->addMessageCustom('acme2');
$apns->queueMessage();
$apns->processQueue();
}
}
}
}
}
}
else
{
echo "Device Does not Exist";
}
}