Пример #1
0
    $redis_handle->set(NameMapper::get_arena_challenge_week_bonus_time_redis_key(), $init_data);
    $lastSendDate = $init_date;
}
$lastSendDateTime = strtotime($lastSendDate . ' 20:00:00');
if ($nowtime - $lastSendDateTime < $difftime) {
    exit("run time error!!!!");
}
error_log("\r\n start send bonus time:" . date("Y-m-d H:i:s"), 3, $logfile);
$last_rank_list = $system_rank_handle->get_full_challenge_list();
$rank_count = count($last_rank_list);
error_log("\r\n rank_list:" . print_r($last_rank_list, true), 3, $logfile);
if ($rank_count > 1) {
    //Backup
    error_log("\r\n rank_content:" . json_encode($last_rank_list), 3, $logfile);
    $redis_handle->hMset(NameMapper::get_arena_challenge_week_bonus_history_redis_key(), $last_rank_list);
    $backup_challenge_rank_list_expire_result = $redis_handle->expire(NameMapper::get_arena_challenge_week_bonus_history_redis_key(), Player_Const::ARENA_CHALLENGE_WEEK_RANK_BONUS_HISTORY_EXPIRE);
    //发放竞技场Challenge前500名奖励物品
    $current_challenge_week_bonus_config = $system_rank_handle->get_current_challenge_week_bonus_config();
    foreach ($last_rank_list as $temp_rank => $temp_uid) {
        $temp_rank = $temp_rank + 1;
        //Rank 1 => Celebrity
        if ($temp_rank == 1) {
            $celebrity_player = $redis_handle->set(NameMapper::get_arena_challenge_week_celebrity_redis_key(), $temp_uid);
        }
        $temp_bonus = $system_rank_handle->get_current_challenge_week_bonus_data($temp_rank, $current_challenge_week_bonus_config);
        list($temp_player_handle, $instance_failure_message) = Player::make($temp_uid);
        if ($temp_player_handle) {
            $temp_player_tmp_backpack_handle = $temp_player_handle->get_player_class_handle('tmpbackpack');
            $bonus = array();
            foreach ($temp_bonus as $bonus_data) {
                $bonus[] = array('item' => $bonus_data['id'], 'number' => $bonus_data['number']);