$service = new Google_Service_Drive($client); //Google_Service_Drive $service->files //Google_Service_Drive_Files_Resource $file = $service->files->get( string $fileId, array $optParams = array() ) //Gets a file's metadata or content by ID. Google_Service_Drive_DriveFile $fileList = $service->files->listFiles( array $optParams = array() ) //Lists of searches files. Google_Service_Drive_FileList $fileList->getFiles(); //array of Google_Service_Drive_DriveFile foreach ($results->getFiles() as $file) { printf("%s (%s)\n", $file->getName(), $file->getId()); }
Consulta de campos de un determinado archivo
$file = $service->files->get("aFileId", array("fields" => "id, name, trashed"))); printf("%s %s %s",$file->getId(), $file->getName(), $file->getTrashed());
Listar archivos de un directorio
$response = $service->files->listFiles(array( 'q' => "'1a84w5BNDE0G3U0-YdCSEyBe4Blj8zEnt' in parents", 'orderBy' => "name", 'fields' => 'nextPageToken, files(id, name)', )); foreach ($response->files as $file) { printf("Found file: %s (%s)\n", $file->name, $file->id); }
Ejemplo con parametros adicionales
$pageToken = null; do { $response = $service->files->listFiles(array( 'q' => "mimeType='image/jpeg'", 'spaces' => 'drive', 'pageToken' => $pageToken, 'fields' => 'nextPageToken, files(id, name)', )); foreach ($response->files as $file) { printf("Found file: %s (%s)\n", $file->name, $file->id); } $pageToken = $response->pageToken; } while ($pageToken != null);
Consideraciones
Parámetro de búsqueda q
Muchas de las opciones de búsqueda se definen en el parámetro q, que permite realizar una consulta combinando varios parámetros de búsqueda que se definen en el siguiente enlace:
https://developers.google.com/drive/v3/web/search-parameters
Busqueda por nombre de archivo
$fileList = $service->files->listFiles(array( 'q' => "name='nombreArchivo'", 'fields' => 'nextPageToken, files(id, name)', ));
Búsqueda de elementos enviados a la papelera
$services->files->listFiles(array( 'q' => "trashed=true", 'fields' => 'nextPageToken, files(id, name, trashed)', ));
Retornar valor del campo enviado a la papelera
$services->files->listFiles(array( 'q' => "name='something'", 'fields' => 'nextPageToken, files(id, name, trashed)', ));
Búsqueda por varios conceptos
$services->files->listFiles(array( 'q' => "modifiedTime > '2012-06-04T12:00:00' and (mimeType contains 'image/' or mimeType contains 'video/')", 'fields' => 'nextPageToken, files(id, name, trashed)', ));
Otros parámetros de búsqueda:
Además de q, existen otros parámetros que pueden consultarse en el siguiente enlace:
https://developers.google.com/drive/v3/reference/files/list
Clases PHP
Google_Service_Drive_Files_Resource
Google_Service_Drive_DriveFile;
Links
https://developers.google.com/drive/v3/reference/files
https://developers.google.com/drive/v3/reference/files/list
https://developers.google.com/drive/v3/web/search-parameters