-1

GoogleドライブのAPI関数retrieveAllFiles()を使ってGoogleドライブのアカウントからファイル一覧を表示させようとしているのですが、パラメータの関係で呼び出し方がわかりません。これが関数です。

      function retrieveAllFiles($service) {
      $result = array();
      $pageToken = NULL;

      do {
        try {
          $parameters = array();
          if ($pageToken) {
            $parameters['pageToken'] = $pageToken;
          }
          $files = $service->files->listFiles($parameters);

          $result = array_merge($result, $files->getItems());
          $pageToken = $files->getNextPageToken();
          print $pageToken;
        } catch (Exception $e) {
          print "An error occurred: " . $e->getMessage();
          $pageToken = NULL;
        }
      } while ($pageToken);
      return $result;
    }

参照用にこのリンクを使用しています: Files:list - Google Drive

Google ドライブ API のサービスを取得して渡すにはどうすればよいですか?

4

2 に答える 2

0
<?php
require_once 'google-api-php-client/src/Google_Client.php';
require_once 'google-api-php-client/src/contrib/Google_DriveService.php';

$client = new Google_Client();
// Get your credentials from the console
$client->setClientId('YOUR_CLIENT_ID');
$client->setClientSecret('YOUR_APP_SECRET');
$client->setRedirectUri('YOUR_REDIRECT_URI');
$client->setScopes(array('https://www.googleapis.com/auth/drive'));

$service = new Google_DriveService($client);

$authUrl = $client->createAuthUrl();

//Request authorization
print "Please visit:\n$authUrl\n\n";
print "Please enter the auth code:\n";
$authCode = trim(fgets(STDIN));

// Exchange authorization code for access token
$accessToken = $client->authenticate($authCode);
$client->setAccessToken($accessToken);

//Insert a file
$file = new Google_DriveFile();
$file->setTitle('My document');
$file->setDescription('A test document');
$file->setMimeType('text/plain');

$data = file_get_contents('document.txt'); //Put this file into same folder

$createdFile = $service->files->insert($file, array(
      //'data' => $data,
      'mimeType' => 'text/plain',
    )); ////Upload File
echo '<pre>';
//print_r($createdFile);
echo '</pre>';


//////Function for getting all files from your drive

function retrieveAllFiles($service) {               
        $result = array();
        $pageToken = NULL;

        do {
            try {
              $parameters = array();
              if ($pageToken) {
                $parameters['pageToken'] = $pageToken;
              }
              $files = $service->files->listFiles($parameters);

              $result = array_merge($result, $files['items']); 

              $pageToken = $files['nextPageToken'];
            } catch (Exception $e) {
              print "An error occurred: " . $e->getMessage();
              $pageToken = NULL;
            }
        } while ($pageToken);           
        return $result;
    }   

$listss = retrieveAllFiles($service);
echo '<pre>';
print_r($listss);
echo '</pre>';
?>
于 2013-11-23T12:03:50.067 に答える
0

$serviceGoogle_DriveServiceの拡張であるhas を指しますGoogle_ServiceResource

サンプル スクリプトを使用するには、完全なgoogle-api-php-clientをダウンロードする必要があります

session_start();
require_once 'PATH_TO/src/Google_Client.php';
require_once 'PATH_TO/src/service/Google_ServiceResource.php';
require_once 'PATH_TO/src/contrib/Google_DriveService.php';


$client = new Google_Client();
$client->setApplicationName("Google Analytics PHP Starter Application");

$client->setClientId('insert_your_oauth2_client_id');
$client->setClientSecret('insert_your_oauth2_client_secret');
$client->setRedirectUri('insert_your_oauth2_redirect_uri');
$client->setDeveloperKey('insert_your_developer_key');
$service = new Google_DriveService($client);

ダウンロードするにはこちらをクリック

于 2012-10-26T13:07:41.017 に答える