Проверьте, существует ли событие, используя идентификатор события - PullRequest
0 голосов
/ 24 сентября 2018

Я пытаюсь проверить, существует ли событие в Календаре Google, используя идентификатор для его поиска.

У меня есть список идентификаторов событий в Календаре Google, и я хочу foreach перебрать идентификаторыи я хочу проверить, существуют ли идентификаторы в учетной записи Google Calendar.

Вот код:

$eventId = '1234567890';
$event = $service->events->get('primary', $eventId);
var_dump($event);

Событие, очевидно, не существует, поэтому оно должно сказать NULL или что-то вродечто.

Но вместо этого он показывает ошибку 500 от API Google в моем журнале ошибок.Там написано:

"message": "Not Found"

Как мне сделать так, чтобы оно показывало только NULL?

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Я только что использовал это:

try {
    $event = $service->events->get('primary', $eventId);
} catch (Google_Service_Exception $e) {
    // Error
    print_r($e->getMessage());
}
0 голосов
/ 24 сентября 2018

Вместо этого вы можете проверить, вернул ли API объект с сообщением «Not Found».

EG:

function getResultFromApi($eventId)
{
    $event = $service->events->get('primary', $eventId);

    // If we get a "Not Found", set to null
    if(isset($event.message) && $event.message == "Not Found")
    {
        $event = NULL;
    }
    return $event;
}

$myEventId = '1234567890';

getResultFromApi($myEventId);
...