Este paquete proporciona una forma fácil de usar de interactuar con los contactos de Google a través de la API de Google People.

PHP Google People API se puede instalar fácilmente usando el compositor. Simplemente ejecute el siguiente comando desde la raíz de su proyecto.
composer require rapidwebltd/php-google-people-api
Si nunca ha utilizado el Administrador de dependencias del compositor antes, diríjase al sitio web del compositor para obtener más información sobre cómo comenzar.
Para usar este paquete, debe autenticarse con Google a través de OAuth 2. Afortunadamente, esto es fácil por el paquete PHP Google OAuth 2 Handler.
Puede ejecutar su script de configuración guiado con el siguiente comando.
php vendor/rapidwebltd/php-google-oauth-2-handler/src/setup.php
Esto lo guiará a través del proceso de configuración de un proyecto e iniciará sesión en la cuenta de Google para la que desea administrar contactos. Cuando se le pregunte a qué ámbitos necesita acceso, ingrese lo siguiente.
https://www.googleapis.com/auth/userinfo.profile
https://www.googleapis.com/auth/contacts
https://www.googleapis.com/auth/contacts.readonly
Cuando esté completo, deberá codificarlo, necesita crear un objeto GoogleOAuth2Handler para esta cuenta de Google.
Luego puede crear un objeto GooglePeople , de la siguiente manera.
$ people = new GooglePeople ( $ googleOAuth2Handler ); // Retrieval all contacts
foreach ( $ people -> all () as $ contact ) {
echo $ contact -> resourceName . ' - ' ;
if ( $ contact -> names ) {
echo $ contact -> names [ 0 ]-> displayName ;
}
echo PHP_EOL ;
} // Retrieve single contact (by resource name)
$ contact = $ people -> get ( ' people/c8055020007701654287 ' ); // Create new contact
$ contact = new Contact ( $ people );
$ contact -> names [ 0 ] = new stdClass ;
$ contact -> names [ 0 ]-> givenName = ' Testy ' ;
$ contact -> names [ 0 ]-> familyName = ' McTest Test ' ;
$ contact -> save (); // Update contact
$ contact -> names [ 0 ]-> familyName = ' McTest ' ;
$ contact -> save (); // Delete contact
$ contact -> delete ();