Methods summary
public
Dropbox\Config
|
#
getConfig( )
The config used when making requests to the Dropbox server.
The config used when making requests to the Dropbox server.
Returns
|
public
Dropbox\AccessToken
|
#
getAccessToken( )
The access token used by this client to make authenticated API calls. You can
get an access token via Dropbox\WebAuth .
The access token used by this client to make authenticated API calls. You can
get an access token via Dropbox\WebAuth .
Returns
|
public
|
#
__construct( Dropbox\Config $config, Dropbox\AccessToken $accessToken )
Constructor.
use \Dropbox as dbx;
$config = new Config(...);
list($accessToken, $dropboxUserId) = $webAuth->finish(...);
$client = new dbx\Client($config, $accessToken);
Parameters
|
public
array
|
#
getAccountInfo( )
Returns a basic account and quota information.
Returns a basic account and quota information.
$client = ...
$accountInfo = $client->getAccountInfo();
print_r($accountInfo);
Returns
Throws
|
public
null|array
|
#
getFile( string $path, resource $outStream, string|null $rev = null )
Downloads a file from Dropbox. The file's contents are written to the given
$outStream and the file's metadata is
returned.
Downloads a file from Dropbox. The file's contents are written to the given
$outStream and the file's metadata is
returned.
$client = ...;
$metadata = $client->getFile("/Photos/Frog.jpeg",
fopen("./Frog.jpeg", "wb"));
print_r($metadata);
Parameters
- $path
string $path The path to the file on Dropbox (UTF-8).
- $outStream
resource $outStream If the file exists, the file contents will be written to this stream.
- $rev
string|null $rev If you want the latest revision of the file at the given path, pass in
null . If you want a specific
version of a file, pass in value of the file metadata's "rev" field.
Returns
null|array The metadata
object for the file at the given $path and $rev, or null if the file doesn't exist,
Throws
|
public
mixed
|
#
uploadFile( string $path, Dropbox\WriteMode $writeMode, resource $inStream, integer|null $numBytes = null )
Creates a file on Dropbox, using the data from $inStream for the file contents.
Creates a file on Dropbox, using the data from $inStream for the file contents.
use \Dropbox as dbx;
$client = ...;
$md1 = $client->uploadFile("/Photos/Frog.jpeg",
dbx\WriteMode::add(),
fopen("./frog.jpeg", "rb"));
print_r($md1);
$md2 = $client->uploadFile("/Photos/Frog.jpeg",
dbx\WriteMode::update($md1["rev"]),
fopen("./frog-new.jpeg", "rb"));
print_r($md2);
Parameters
- $path
string $path The Dropbox path to save the file to (UTF-8).
- $writeMode
Dropbox\WriteMode
$writeMode What to do if there's already a file at the given path.
- $inStream
resource $inStream
- $numBytes
integer|null $numBytes You can pass in null if
you don't know. If you do provide the size, we can perform a slightly more
efficient upload (fewer network round-trips) for files smaller than 8 MB.
Returns
Throws
|
public
mixed
|
#
uploadFileFromString( string $path, Dropbox\WriteMode $writeMode, string $data )
Creates a file on Dropbox, using the given $data string as the file
contents.
Creates a file on Dropbox, using the given $data string as the file
contents.
use \Dropbox as dbx;
$client = ...;
$md = $client->uploadFile("/Grocery List.txt",
dbx\WriteMode::add(),
"1. Coke\n2. Popcorn\n3. Toothpaste\n");
print_r($md);
Parameters
- $path
string $path The Dropbox path to save the file to (UTF-8).
- $writeMode
Dropbox\WriteMode
$writeMode What to do if there's already a file at the given path.
- $data
string $data The data to use for the contents of the file.
Returns
Throws
|
public
mixed
|
#
uploadFileChunked( string $path, Dropbox\WriteMode $writeMode, resource $inStream, integer|null $numBytes = null, integer|null $chunkSize = null )
Creates a file on Dropbox, using the data from $inStream as the file
contents.
Creates a file on Dropbox, using the data from $inStream as the file
contents.
This version of uploadFile splits uploads the file ~4MB chunks
at a time and will retry a few times if one chunk fails to upload. Uses Dropbox\Client::chunkedUploadStart() , Dropbox\Client::chunkedUploadContinue() , and Dropbox\Client::chunkedUploadFinish() .
Parameters
- $path
string $path The Dropbox path to save the file to (UTF-8).
- $writeMode
Dropbox\WriteMode
$writeMode What to do if there's already a file at the given path.
- $inStream
resource $inStream
- $numBytes
integer|null $numBytes The number of bytes available from $inStream. You can pass in
null if you don't know.
- $chunkSize
integer|null $chunkSize The number of bytes to upload in each chunk. You can omit this (or
pass in null and the library will
use a reasonable default.
Returns
Throws
|
public
array
|
#
chunkedUploadStart( string $data )
Start a new chunked upload session and upload the first chunk of data.
Start a new chunked upload session and upload the first chunk of data.
Parameters
- $data
string $data The data to start off the chunked upload session.
Returns
array A pair of (string $uploadId, int $byteOffset) . $uploadId is a unique identifier for this chunked
upload session. You pass this in to Dropbox\Client::chunkedUploadContinue() and chuunkedUploadFinish. $byteOffset is
the number of bytes that were successfully uploaded.
Throws
|
public
integer|boolean
|
#
chunkedUploadContinue( string $uploadId, integer $byteOffset, string $data )
Append another chunk data to a previously-started chunked upload session.
Append another chunk data to a previously-started chunked upload session.
Parameters
- $uploadId
string $uploadId The unique identifier for the chunked upload session. This is obtained
via Dropbox\Client::chunkedUploadStart() .
- $byteOffset
integer $byteOffset The number of bytes you think you've already uploaded to the given
chunked upload session. The server will append the new chunk of data after that
point.
- $data
string $data The data to append to the existing chunked upload session.
Returns
integer|boolean If false , it means the server
didn't know about the given $uploadId .
This may be because the chunked upload session has expired (they last around 24
hours). If true , the chunk was
successfully uploaded. If an integer, it means you and the server don't agree on
the current $byteOffset . The returned
integer is the server's internal byte offset for the chunked upload session. You
need to adjust your input to match.
Throws
|
public
array|null
|
#
chunkedUploadFinish( string $uploadId, string $path, Dropbox\WriteMode $writeMode )
Creates a file on Dropbox using the accumulated contents of the given chunked
upload session.
Creates a file on Dropbox using the accumulated contents of the given chunked
upload session.
Parameters
- $uploadId
string $uploadId The unique identifier for the chunked upload session. This is obtained
via Dropbox\Client::chunkedUploadStart() .
- $path
string $path The Dropbox path to save the file to ($path).
- $writeMode
Dropbox\WriteMode
$writeMode What to do if there's already a file at the given path.
Returns
array|null If null , it means the Dropbox
server wasn't aware of the $uploadId
you gave it. Otherwise, you get back the metadata object for
the newly-created file.
Throws
|
public
array|null
|
#
getMetadata( string $path )
Returns the metadata for whatever file or folder is at the given path.
Returns the metadata for whatever file or folder is at the given path.
$client = ...;
$md = $client->getMetadata("/Photos/Frog.jpeg");
print_r($md);
Parameters
- $path
string $path The Dropbox path to a file or folder (UTF-8).
Returns
array|null If there is a file or folder at the given path, you'll get back the metadata object for that file or folder. If not, you'll get back
null .
Throws
|
public
array|null
|
#
getMetadataWithChildren( string $path )
Returns the metadata for whatever file or folder is at the given path and, if
it's a folder, also include the metadata for all the immediate children of that
folder.
Returns the metadata for whatever file or folder is at the given path and, if
it's a folder, also include the metadata for all the immediate children of that
folder.
$client = ...;
$md = $client->getMetadataWithChildren("/Photos");
print_r($md);
Parameters
- $path
string $path The Dropbox path to a file or folder (UTF-8).
Returns
array|null If there is a file or folder at the given path, you'll get back the metadata object for that file or folder, along with all
immediate children if it's a folder. If not, you'll get back null .
Throws
|
public
array
|
#
getMetadataWithChildrenIfChanged( string $path, string $previousFolderHash )
If you've previously retrieved the metadata for a folder and its children,
this method will retrieve updated metadata only if something has changed. This
is more efficient than calling Dropbox\Client::getMetadataWithChildren() if you have a
cache of previous results.
If you've previously retrieved the metadata for a folder and its children,
this method will retrieve updated metadata only if something has changed. This
is more efficient than calling Dropbox\Client::getMetadataWithChildren() if you have a
cache of previous results.
$client = ...;
$md = $client->getMetadataWithChildren("/Photos");
print_r($md);
assert($md["is_dir"], "expecting \"/Photos\" to be a folder");
sleep(10);
list($changed, $new_md) = $client->getMetadataWithChildrenIfChanged(
"/Photos", $md["hash"]);
if ($changed) {
echo "Folder changed.\n";
print_r($new_md);
} else {
echo "Folder didn't change.\n";
}
Parameters
- $path
string $path The Dropbox path to a folder (UTF-8).
- $previousFolderHash
string $previousFolderHash The "hash" field from the previously retrieved folder
metadata.
Returns
array A list(boolean $changed, array $metadata) . If the metadata hasn't changed, you'll
get list(false, null) . If the metadata of the folder or any
of its children has changed, you'll get list(true, $newMetadata) . $metadata is a metadata object.
Throws
|
public
array
|
#
getDelta( string|null $cursor = null )
A way of letting you keep up with changes to files and folders in a user's
Dropbox.
A way of letting you keep up with changes to files and folders in a user's
Dropbox.
Parameters
- $cursor
string|null $cursor If this is the first time you're calling this, pass in null . Otherwise, pass in whatever cursor was
returned by the previous call.
Returns
array A delta page,
which contains a list of changes to apply along with a new "cursor" that should
be passed into future getDelta calls. If the "reset" field is
true , you should clear your local
state before applying the changes. If the "has_more" field is true , call getDelta immediately
to get more results, otherwise wait a while (at least 5 minutes) before calling
getDelta again.
Throws
|
public
array|null
|
#
getRevisions( string $path, integer|null $limit = null )
Gets the metadata for all the file revisions (up to a limit) for a given
path.
Gets the metadata for all the file revisions (up to a limit) for a given
path.
See /revisions.
Parameters
- $path
string path The Dropbox path that you want file revision metadata for (UTF-8).
- $limit
integer|null limit The maximum number of revisions to return.
Returns
array|null A list of metadata objects, one for each file revision. The
later revisions appear first in the list. If null , then there were too many revisions at
that path.
Throws
|
public
mixed
|
#
restoreFile( string $path, string $rev )
Takes a copy of the file at the given revision and saves it over the current
copy. This will create a new revision, but the file contents will match the
revision you specified.
Takes a copy of the file at the given revision and saves it over the current
copy. This will create a new revision, but the file contents will match the
revision you specified.
See /restore.
Parameters
- $path
string $path The Dropbox path of the file to restore (UTF-8).
- $rev
string $rev The revision to restore the contents to.
Returns
Throws
|
public
mixed
|
#
searchFileNames( string $basePath, string $query, integer|null $limit = null, boolean $includeDeleted = false )
Returns metadata for all files and folders whose filename matches the query
string.
Returns metadata for all files and folders whose filename matches the query
string.
Parameters
- $basePath
string $basePath The path to limit the search to (UTF-8). Pass in "/" to search
everything.
- $query
string $query A space-separated list of substrings to search for. A file matches only
if it contains all the substrings.
- $limit
integer|null $limit The maximum number of results to return.
- $includeDeleted
boolean $includeDeleted Whether to include deleted files in the results.
Returns
Throws
|
public
string
|
#
createShareableLink( string $path )
Creates and returns a public link to a file or folder's "preview page". This
link can be used without authentication. The preview page may contain a
thumbnail or some other preview of the file, along with a download link to
download the actual file.
Creates and returns a public link to a file or folder's "preview page". This
link can be used without authentication. The preview page may contain a
thumbnail or some other preview of the file, along with a download link to
download the actual file.
See /shares.
Parameters
- $path
string $path The Dropbox path to the file or folder you want to create a shareable link
to (UTF-8).
Returns
string The URL of the preview page.
Throws
|
public
array
|
#
createTemporaryDirectLink( string $path )
Creates and returns a direct link to a file. This link can be used without
authentication. This link will expire in a few hours.
Creates and returns a direct link to a file. This link can be used without
authentication. This link will expire in a few hours.
Parameters
- $path
string $path The Dropbox path to a file or folder (UTF-8).
Returns
array A list(string $url, \DateTime $expires)
where <code>$url is a direct link to
the requested file and $expires is a
standard PHP \DateTime representing when $url will stop working.
Throws
|
public
string
|
#
createCopyRef( string $path )
Creates and returns a "copy ref" to a file. A copy ref can be used to copy a
file across different Dropbox accounts without downloading and re-uploading.
Creates and returns a "copy ref" to a file. A copy ref can be used to copy a
file across different Dropbox accounts without downloading and re-uploading.
For example: Create a Client using the access token from one
account and call createCopyRef . Then, create a Client
using the access token for another account and call copyFromCopyRef
using the copy ref. (You need to use the same app key both times.)
Parameters
- $path
string path The Dropbox path of the file or folder you want to create a copy ref for
(UTF-8).
Returns
string The copy ref (just a string that you keep track of).
Throws
|
public
array|null
|
#
getThumbnail( string $path, string $format, string $size )
Gets a thumbnail image representation of the file at the given path.
Gets a thumbnail image representation of the file at the given path.
Parameters
- $path
string $path The path to the file you want a thumbnail for (UTF-8).
- $format
string $format One of the two image formats: "jpeg" or "png".
- $size
string $size One of the predefined image size names, as a string:
- "xs" - 32x32
- "s" - 64x64
- "m" - 128x128
- "l" - 640x480
- "xl" - 1024x768
Returns
array|null If the file exists, you'll get list(array $metadata, string $data) where $metadata is the file's metadata
object and $data is the raw data for the thumbnail image. If the file
doesn't exist, you'll get null .
Throws
|
public
mixed
|
#
copy( string $fromPath, string $toPath )
Copies a file or folder to a new location
Copies a file or folder to a new location
Parameters
- $fromPath
string $fromPath The Dropbox path of the file or folder you want to copy (UTF-8).
- $toPath
string $toPath The destination Dropbox path (UTF-8).
Returns
Throws
|
public
mixed
|
#
copyFromCopyRef( string $copyRef, string $toPath )
Creates a file or folder based on an existing copy ref (possibly from a
different Dropbox account).
Creates a file or folder based on an existing copy ref (possibly from a
different Dropbox account).
Parameters
- $copyRef
string $copyRef A copy ref obtained via the Dropbox\Client::createCopyRef() call.
- $toPath
string $toPath The Dropbox path you want to copy the file or folder to (UTF-8).
Returns
Throws
|
public
array|null
|
#
createFolder( string $path )
Creates a folder.
Parameters
- $path
string $path The Dropbox path at which to create the folder (UTF-8).
Returns
array|null If successful, you'll get back the metadata object for the
newly-created folder. If not successful, you'll get null .
Throws
|
public
mixed
|
#
delete( string $path )
Deletes a file or folder
See /fileops/delete.
Parameters
- $path
string $path The Dropbox path of the file or folder to delete (UTF-8).
Returns
Throws
|
public
mixed
|
#
move( string $fromPath, string $toPath )
Moves a file or folder to a new location.
Moves a file or folder to a new location.
See /fileops/move.
Parameters
- $fromPath
string $fromPath The source Dropbox path (UTF-8).
- $toPath
string $toPath The destination Dropbox path (UTF-8).
Returns
Throws
|
public static
DateTime
|
#
parseDateTime( string $apiDateTimeString )
Parses date/time strings returned by the Dropbox API. The Dropbox API returns
date/times formatted like: "Sat, 21 Aug 2010
22:31:20 +0000" .
Parses date/time strings returned by the Dropbox API. The Dropbox API returns
date/times formatted like: "Sat, 21 Aug 2010
22:31:20 +0000" .
Parameters
- $apiDateTimeString
string $apiDateTimeString A date/time string returned by the API.
Returns
DateTime A standard PHP \DateTime instance.
Throws
|