Google Drive PHP API客户端:在共享驱动器中创建文件夹

时间:2020-10-20 21:55:34

标签: php google-api google-drive-api google-api-php-client

我正在尝试使用带有以下代码的Google的PHP API客户端在新创建的共享驱动器中创建一个文件夹(请注意,API连接和服务都可以正常工作)

//Create the drive
$drive = new Google_Service_Drive_Drive();
$drive->setName( "Drive Name" );

$create_drive_response = $service->drives->create( uniqid(), $drive );
$drive_id = $create_drive_response->id;     


//Create the folder
$folder = new Google_Service_Drive_DriveFile();
$folder->setName ( "Folder Name" );
$folder->setMimeType ( 'application/vnd.google-apps.folder' );
$folder->setDriveId ( $drive_id );

$optional_params = [ 'supportsAllDrives' => true];

$create_folder_response = $service->files->create( $folder, $optional_params );
$folder_id = $create_folder_response->id()

驱动器创建没有问题,文件夹创建也没有问题,但是无论我做什么,该文件夹总是在“我的驱动器”的根目录中创建,而不是在新创建的驱动器中。响应中没有错误或警告。

1 个答案:

答案 0 :(得分:0)

文档在任何地方都没有提到,但是在共享驱动器中创建文件夹或文件时,您需要使用{{1将'driveId'属性和'parents'属性都设置为共享驱动器的ID }}:

$folder->setParents ( $drive_id );