Я могу создать подпапку только с кодом ниже, но я просто не могу вернуть идентификатор.
Я хотел бы получить идентификатор и / или ссылку на папку, чтобы я мог добавить их в мою базу данных.
В настоящее время ниже создается папка, но только возвращает «//» в качестве идентификатора!
Спасибо за вашу помощь
<?php if ($client->getAccessToken()) { $file = new Google_DriveFile(); //Setup the Folder to Create $file->setTitle('Project Folder'); $file->setDescription('A Project Folder'); $file->setMimeType('application/vnd.google-apps.folder'); //Set the ProjectsFolder Parent $parent = new Google_ParentReference(); $parent->setId('0B9mYBlahBlahBlah'); $file->setParents(array($parent)); //create the ProjectFolder in the Parent $createdFile = $service->files->insert($file, array( 'mimeType' => 'application/vnd.google-apps.folder', )); // print_r($createdFile); print "folder created sucessfully"; echo "folder id is" . $createdFile->id; } ?>
Может быть, это не причудливый способ, но это мой способ получить идентификатор папки:
$service = new Google_DriveService($client); $files = $service->files->listFiles(); foreach ($files['items'] as $item) { if ($item['title'] == 'your_folder_name') { $folderId = $item['id']; break; } }
Я думаю, что методы были обновлены, поэтому я использовал новые методы. Вот библиотека
if ($client->getAccessToken()) { $file = new Google_Service_Drive_DriveFile(); $file->title = "New File By Bikash 111"; // To create new folder $file->setMimeType('application/vnd.google-apps.folder'); // To set parent folder $parent = new Google_Service_Drive_ParentReference(); $parent->setId('0B5kdKIFfgdfggyTHpEQlpmcExXRW8'); $file->setParents(array($parent)); $chunkSizeBytes = 1 * 1024 * 1024; // Call the API with the media upload, defer so it doesn't immediately return. $client->setDefer(true); $request = $service->files->insert($file); // Create a media file upload to represent our upload process. $media = new Google_Http_MediaFileUpload( $client, $request, 'text/plain', null, true, $chunkSizeBytes ); $media->setFileSize(filesize(TESTFILE)); // Upload the various chunks. $status will be false until the process is // complete. $status = false; $handle = fopen(TESTFILE, "rb"); while (!$status && !feof($handle)) { $chunk = fread($handle, $chunkSizeBytes); $status = $media->nextChunk($chunk); } //Here you will get the new created folder's id echo "<pre>"; var_dump($status->id); exit; }
,if ($client->getAccessToken()) { $file = new Google_Service_Drive_DriveFile(); $file->title = "New File By Bikash 111"; // To create new folder $file->setMimeType('application/vnd.google-apps.folder'); // To set parent folder $parent = new Google_Service_Drive_ParentReference(); $parent->setId('0B5kdKIFfgdfggyTHpEQlpmcExXRW8'); $file->setParents(array($parent)); $chunkSizeBytes = 1 * 1024 * 1024; // Call the API with the media upload, defer so it doesn't immediately return. $client->setDefer(true); $request = $service->files->insert($file); // Create a media file upload to represent our upload process. $media = new Google_Http_MediaFileUpload( $client, $request, 'text/plain', null, true, $chunkSizeBytes ); $media->setFileSize(filesize(TESTFILE)); // Upload the various chunks. $status will be false until the process is // complete. $status = false; $handle = fopen(TESTFILE, "rb"); while (!$status && !feof($handle)) { $chunk = fread($handle, $chunkSizeBytes); $status = $media->nextChunk($chunk); } //Here you will get the new created folder's id echo "<pre>"; var_dump($status->id); exit; }
$files = $service->files->listFiles(array('maxResults' => 1)); var_dump($files['items'][0]['id']);