Upload su Google Drive con PHP

Mattepuffo's logo
Upload su Google Drive con PHP

Upload su Google Drive con PHP

Di Google Drive ne abbiamo parlato diverse volte.

Oggi vediamo come caricare dei filese usando PHP; per la prima configurazione vi rimando alla documentazione ufficiale.

L'unica cosa che dovete modificare del codice che trovate è la riga che riguarda lo scope:

$client->setScopes(Google_Service_Drive::DRIVE_FILE);

In sostanza avete bisogno di più permessi.

Detto questo, presupponendo che abbiate fatto tutto bene, ecco il mio codice:

require_once './google-api-php-client-2.2.2/vendor/autoload.php';

$client = new Google_Client();
$client->setApplicationName('Google Drive MP Notes');
$client->setScopes(Google_Service_Drive::DRIVE_FILE);
$client->setAuthConfig('credentials.json');
$client->setAccessType('offline');
$client->setPrompt('select_account consent');
$tokenPath = 'token.json';
if (file_exists($tokenPath)) {
    $accessToken = json_decode(file_get_contents($tokenPath), true);
    $client->setAccessToken($accessToken);
}

$service = new Google_Service_Drive($client);

$fileMetadata = new Google_Service_Drive_DriveFile(array('name' => 'export.json'));
$content = file_get_contents('export.json');
$file = $service->files->create($fileMetadata, array(
    'data' => $content,
    'mimeType' => 'application/json',
    'uploadType' => 'multipart',
    'fields' => 'id'
        )
);
printf("File ID: %s
", $file->id);

E sul mio GDrive mi ritrovo con il file caricato.

Enjoy!


Condividi

Commentami!