Skip to content

Working with files

Kunal Varma edited this page Jun 29, 2016 · 18 revisions

Working with files

Get File/Folder Metadata

Get the Metadata for a file or folder.

Example

$file = $dropbox->getMetadata("/hello-world.txt");

With options:

$file = $dropbox->getMetadata("/hello-world.txt", ["include_media_info" => true, "include_deleted" => true]);

Fetch file details:

//Id
$file->getId();

//Name
$file->getName();

//Size
$file->getSize();

The getMetadata() method will return an instance of the FileMetadata model.

For available options see: https://www.dropbox.com/developers/documentation/http/documentation#files-get_metadata

List Folder Contents

Get the contents of a Folder.

Example

$listFolderContents = $dropbox->listFolder("/");

//Fetch Items
$items = $listFolderContents->getItems();

//Fetch Cusrsor for listFolderContinue()
$cursor = $listFolderContents->getCursor();

//If more items are available
$hasMoreItems = $listFolderContents->hasMoreItems();

The listFolder() method will return an instance of the MetadataCollection model.

$listFolderContents = $dropbox->listFolder("/");

//Fetch Items (Returns an instance of ModelCollection)
$items = $listFolderContents->getItems();

//All Items
$items->all();

//First Item
$items->first();

//Last Item
$items->last();

Further calling the getItems() method of the MetadataCollection model, will return an instance of the ModelCollection model, which extends the awesome Collection class. See it's Available methods.

For available options see: https://www.dropbox.com/developers/documentation/http/documentation#files-list_folder

List Folder Continue

Paginate through all files and retrieve updates to the folder, using the cursor retrieved from listFolder or listFolderContinue.

Example

$listFolderContents = $dropbox->listFolder("/");

//Process listFolder Items
...

//If more items are available
if ($listFolderContents->hasMoreItems()) {
    //Fetch Cusrsor for listFolderContinue()
    $cursor = $listFolderContents->getCursor();

    //Paginate through the remaining items
    $listFolderContinue = $dropbox->listFolderContinue($cursor);

    $remainingItems = $listFolderContinue->getItems();
}

The listFolderContinue() method will return an instance of the MetadataCollection model, same as the listFolder method.

List Folder Latest Cursor

Get a cursor for the folder's state.

Example

//Fetch the latest cursor
$cursor = $dropbox-listFolderLatestCursor("/Public");

//Use this cursor to check if any files/folders where modified
//post this cursor was obtained
$modifiedItems = $dropbox->listFolderContinue($cursor)->getItems();

The listFolderLatestCursor() method will return a cursor.

Using this cursor with the listFolderContinue() method will return an instance of the MetadataCollection model, with the files/folders that have been modified since the cursor was obtained with listFolderLatestCursor method.

For available options see: https://www.dropbox.com/developers/documentation/http/documentation#files-list_folder-get_latest_cursor

List Revisions

Get Revisions of a File

Example

$revisions = $dropbox->listRevisions("/hello-world.txt", ["limit" => 3]);

//All Revisions
$revisions->all();

//First Revision
$revisions->first();

//Last Revision
$revisions->last();

The listRevisions() method will return an instance of the ModelCollection model, which extends the awesome Collection class. See it's Available methods.

For available options see: https://www.dropbox.com/developers/documentation/http/documentation#files-list_revisions

Search

Search a folder for files/folders.

Example

$searchQuery = "hello world";
$searchResults = $dropbox->search("/", $searchQuery, ['start' => 0, 'max_results' => 5]);

//Fetch Items
$items = $searchResults->getItems();

//Fetch Cusrsor for calling search() with the `start` parameter/option for pagination
$startCursor = $searchResults->getCursor();

//If more items are available
if ($searchResults->hasMoreItems()) {
    //Pagination
    $moreSearchResults = $dropbox->search("/", $searchQuery, ['start' => $startCursor, 'max_results' => 5]);
}

The search() method will return an instance of the MetadataCollection model.

$searchQuery = "hello world";
$searchResults = $dropbox->search("/", $searchQuery, ['start' => 0, 'max_results' => 5]);

//Fetch Items (Returns an instance of ModelCollection)
$items = $searchResults->getItems();

//All Items
$items->all();

//First Item
$items->first();

//Last Item
$items->last();

Further calling the getItems() method of the MetadataCollection model, will return an instance of the ModelCollection model, which extends the awesome Collection class. See it's Available methods.

For available options see: https://www.dropbox.com/developers/documentation/http/documentation#files-search