PHP integration handles uploads and file operations by wrapping Uploadcare Upload API and REST API. This comprehensive API client lets you use most of the Uploadcare features from within your PHP app.
Check out an example project that we created as a showcase for various usage scenarios and tasks that you can resolve.
- Upload files from local storage and URLs (up to 5 TB)
- Multipart uploading for large files
- Uploading network to speed uploading jobs (like CDN)
File management features:
- Get file info and perform various operations (store/delete/copy) with them
- Work with groups of files
- Get info about account project
- Manage webhooks
- Convert documents
- Encode and transform videos
- Secure authentication
- Secure uploads (signed uploads)
- Secure delivery (signed URLs)
- Secure webhooks (signing secret)
PHP 7.1 or later
How to check PHP version via CLI:
How to check modules:
You should see
json in the list:
workstation:home user$ php -m [PHP Modules] bcmath ... curl ... json ... [Zend Modules]bash
Prior to installing
uploadcare-php, get the Composer
dependency manager for PHP to simplify installation.
2. Run Composer:
php composer.phar updatebash
3. Define Uploadcare API keys:
Add API keys to your configuration object. For example:
# config.php $_ENV['UPLOADCARE_PUBLIC_KEY'] = '<your public key>'; $_ENV['UPLOADCARE_PRIVATE_KEY'] = '<your private key>';php
There're a few ways to create a configuration object. We recommend that you use
this static method of the
$configuration = Uploadcare\Configuration::create($_ENV['UPLOADCARE_PUBLIC_KEY'], $_ENV['UPLOADCARE_SECRET_KEY']);php
Alternatively, you can create a Security signature, HTTP client, and Serializer classes explicitly. After that, you can create a configuration object:
$sign = new \Uploadcare\Security\Signature('<your private key>', 3600); // Must be an instance of \Uploadcare\Interfaces\SignatureInterface $client = \Uploadcare\Client\ClientFactory::createClient(); // Must be an instance of \GuzzleHttp\ClientInterface $serializer = new \Uploadcare\Serializer\Serializer(new \Uploadcare\Serializer\SnackCaseConverter()); // Must be an instance of \Uploadcare\Interfaces\Serializer\SerializerInterface $configuration = new \Uploadcare\Configuration('<your public key>', $sign, $client, $serializer);php
As you can see, the factory method is more convenient for standard usage.
That's it! All further operations will use this configuration object.
Now that you have Uploadcare PHP API client up and running, you can do the following: