我編寫了一個PHP腳本來使用APNS推送通知。我添加了一個PHP進度條來監視已經推送了多少用戶。進度條顯示在PHP頁面中。我也不斷更新一個MySOL數據庫來記錄這個數字。預計該腳本將運行很長時間。運行約3小時後,PHP頁面(帶進度條)停止,但是當我檢查數據庫時,推送的用戶數量仍在增加。這意味着腳本仍在服務器內存中運行,但爲什麼頁面顯示停止?PHP腳本仍在服務器上運行,但網頁顯示已停止
這裏是一些代碼:
$count = 1;
while($row = mysql_fetch_array($result)) {
$pushToken = $row['pushToken'];
$result2 = mysql_query("SELECT COUNT(*) FROM deactivated_pushtokens WHERE pushToken LIKE '$pushToken'");
list($token_deactivated) = mysql_fetch_row($result2);
if ($token_deactivated==0){
if ($row['pushToken']!=""){
if (strlen($row['pushToken']) == 64){//All valid push tokens will have a 32x2=64 length
//echo "<br>$count. Sending push to ".$row['deviceID']." Device token = ".$row['pushToken'];
//echo "<br><br>";
if($count > $sendThreshold)
{
$pushMessage->sendMessage($row['pushToken'],$count,$appVersion,$mode,$message, $push_id);
}
if($count >= $push_update_count * $push_update_interval)
{
$pushlog_update = mysql_query("UPDATE pushlogs SET num_push_sent = '".$count."' WHERE push_id = '".$push_id."'");
if(!$pushlog_update)
{
// echo "pushlog table update error: ".mysql_error."<br />";
}
/* if($count<=$maxBar) // if failed again commment out and use block bleow
{
$prb->moveStep($count);
}
*/
$push_update_count++;
}
if($count >= $update_progressbar_count * $update_progressbar_interval)
{
if($count<=$maxBar)
{
$prb->moveStep($count);
}
$update_progressbar_interval++;
}
$count++;
// move the Bar
你能顯示一些代碼嗎? – someone