Php Google驱动器文件夹未在父文件夹内创建(按文件夹ID)

Php Google驱动器文件夹未在父文件夹内创建(按文件夹ID),php,api,google-drive-api,google-drive-realtime-api,Php,Api,Google Drive Api,Google Drive Realtime Api,我从我的网站上传文件,它将通过google drive API上传到子文件夹中的google drive。一切正常。但是我想在父文件夹中创建一个文件夹。我有父文件夹id。但无法在父文件夹内创建。它将在父文件夹之外创建文件夹 我已尝试使用以下代码: $ParentfolderId="0Bxy_x723UM3tFFFSSSWWW"; $DriveFolderName = "foldername1"; $folder_mime =

我从我的网站上传文件,它将通过google drive API上传到子文件夹中的google drive。一切正常。但是我想在父文件夹中创建一个文件夹。我有父文件夹id。但无法在父文件夹内创建。它将在父文件夹之外创建文件夹

我已尝试使用以下代码:

        $ParentfolderId="0Bxy_x723UM3tFFFSSSWWW";           

        $DriveFolderName = "foldername1";
        $folder_mime = "application/vnd.google-apps.folder";
        $folder_name = $DriveFolderName;
        $folder = new Google_Service_Drive_DriveFile(array('parents' => array( $ParentfolderId)));
        $folder->setTitle($folder_name);
        $folder->setDescription($GoogleDriveDesc); 
        $folder->setMimeType($folder_mime);             
        $newFolder = $service->files->insert($folder);
        $folderId  = $newFolder['id'];

        $file = new Google_Service_Drive_DriveFile();

        if ($folderId != null) {
            $parent = new Google_Service_Drive_ParentReference();
            $parent->setId($folderId);          
            $file->setParents(array($parent));
        } 
        try {
            $data = file_get_contents($filepath);           
            $file->title = $filename;       
            $chunkSizeBytes = 1 * 1024 * 1024;

            $client->setDefer(true);
            $request = $service->files->insert($file);

            $media = new Google_Http_MediaFileUpload(
                  $client,
                  $request,
                  '',
                  null,
                  true,
                  $chunkSizeBytes
            );

            $media->setFileSize(filesize($filepath));
            $status = false;
            $handle = fopen($filepath, "rb");
            while (!$status && !feof($handle)) {
                $chunk = fread($handle, $chunkSizeBytes);
                $status = $media->nextChunk($chunk);
            }

            $result = false;
            if ($status != false) {
                $result = $status;
            }
            return $result;

        } catch (Exception $e) {
             print "An error occurred: " . $e->getMessage();
        }   
应该是

$folder = new Google_Service_Drive_DriveFile(array('parents' => array($ParentfolderId)));
而不是

$folder = new Google_Service_Drive_DriveFile(array('parents' => array($DriveFolderName)));
此代码适用于

        $ParentfolderId="0Bxy_x723UM3tFFFSSSWWW";           

        $DriveFolderName = "foldername1";
        $folder_mime = "application/vnd.google-apps.folder";
        $folder_name = $DriveFolderName;
        $folder = new Google_Service_Drive_DriveFile(array('parents' => array( $ParentfolderId)));
        $folder->setTitle($folder_name);
        $folder->setDescription($GoogleDriveDesc); 
        $folder->setMimeType($folder_mime);     

        $parent = new Google_Service_Drive_ParentReference();
        $parent->setId($ParentfolderId);
        $folder->setParents(array($parent));

        $newFolder = $service->files->insert($folder);
        $folderId  = $newFolder['id'];

        $file = new Google_Service_Drive_DriveFile();

        if ($folderId != null) {
            $parent = new Google_Service_Drive_ParentReference();
            $parent->setId($folderId);          
            $file->setParents(array($parent));
        } 
        try {
            $data = file_get_contents($filepath);           
            $file->title = $filename;       
            $chunkSizeBytes = 1 * 1024 * 1024;

            $client->setDefer(true);
            $request = $service->files->insert($file);

            $media = new Google_Http_MediaFileUpload(
                  $client,
                  $request,
                  '',
                  null,
                  true,
                  $chunkSizeBytes
            );

            $media->setFileSize(filesize($filepath));
            $status = false;
            $handle = fopen($filepath, "rb");
            while (!$status && !feof($handle)) {
                $chunk = fread($handle, $chunkSizeBytes);
                $status = $media->nextChunk($chunk);
            }

            $result = false;
            if ($status != false) {
                $result = $status;
            }
            return $result;

        } catch (Exception $e) {
             print "An error occurred: " . $e->getMessage();
        }

检查这个,我想$DriveFolderName不见了。@SoniVimal,没有。我试过使用$folder=new Google\u Service\u Drive\u DriveFile(数组('parents'=>array($DriveFolderName));。但是它不起作用你检查过上面的链接了吗?请在代码中尝试相同的内容。@SoniVimal是的。但我不确定。我需要在哪里更改代码?