Cloudinary Blog

Uploading PHP Files and Rich Media the Easy Way

Uploading PHP Files and Rich Media the Easy Way

Rich media is surplus and abundant on the internet. Tons of apps these days deal with rich media. Users spend more time uploading and viewing media content than any other thing.

Cloudinary’s PHP SDK, with which you can easily and speedily upload multiple images and videos in PHP files can help you ramp up quickly while dealing the mechanics of php file uploads and rich media during app development.

This article guides you through the process of uploading PHP files and rich media the easy way.


Sign up for Cloudinary free today!


PHP File Uploads With Cloudinary

The Cloudinary Open-source PHP library utilizes the Cloudinary API which allows for the transmission of any kind of file for safe storage in the cloud. They contain easy-to-use helper methods for these image-related tasks:

  • Uploads
  • Administration and creation of sprites
  • Embeddings
  • Generation of URLs for transformations

To get started, do the following:

Step 1. Sign up for a Cloudinary account.

Sign up for Cloudinary’s generous free-tier plan.

Dashboard with upload options
Cloudinary Dashboard: Your cloud name, API key, and API secret are the key values for interacting with Cloudinary’s capabilities.

Step 2. Install the Cloudinary PHP library.

Fetch the PHP SDK Library

Fetch the library with Composer. Alternatively, go to Cloudinary’s PHP repository on GitHub, copy all the required files and paste them in your app. Afterwards, then reference them in the script with which to perform the upload, as follows:

Copy to clipboard
/**
** UPLOADING PHP FILES
***
// importing the necessary Cloudinary files
require 'Cloudinary.php';
require 'Uploader.php';
require 'Helpers.php';
require 'Api.php';
.....

To manage your PHP library’s dependency with Composer, install Cloudinary's PHP library directly from the Packagist repository and update your composer.json file, as follows:

Copy to clipboard
{
  "require": {
    "cloudinary/cloudinary_php": "dev-master"
  }
}

Now install the dependencies, including Cloudinary's PHP package:

Copy to clipboard
php composer.phar install

For more details, see Cloudinary’s documentation on the PHP SDK.

Step 3. PHP File & Rich Media Uploads to Cloudinary.

You can upload images and other files to Cloudinary in PHP on a server that runs PHP 5.3 or later. Do the following:

First, set up the key values with the config method so that Cloudinary can verify that your account is valid:

Copy to clipboard
\Cloudinary::config(array(
    "cloud_name" => "my_cloud_name",
    "api_key" => "my_api_key",
    "api_secret" => "my_api_secret"
));

Note
For security, load those three values from an environment (.env) file. Alternatively, put them in a file called settings.php and include it in the script that performs the actual uploading.

Now upload your images and other files to Cloudinary’s cloud platform:

  • To upload a local file, e.g.,my_image.jpg, type:

    Copy to clipboard
    \Cloudinary\Uploader::upload("/home/my_image.jpg")

    The upload method then returns an associative array whose content is similar to this snippet:

    Copy to clipboard
    Array
    (
    [public_id] => sample
    [version] => 1312461204
    [width] => 864
    [height] => 576
    [format] => jpg
    [bytes] => 120253
    [url] => https://res.cloudinary.com/demo/image/upload/v1371281596/sample.jpg
    [secure_url] => https://res.cloudinary.com/demo/image/upload/v1371281596/sample.jpg
    )
  • To upload a file from a remote HTTP or HTTPS URL, type:

    Copy to clipboard
    \Cloudinary\Uploader::upload("https://www.example.com/image.jpg")
  • To upload a file from an S3 bucket, type:

    Copy to clipboard
    \Cloudinary\Uploader::upload('s3://my-bucket/my-path/my-file.jpg');

    Cloudinary assigns a public ID to each and every uploaded file for transformation and delivery later on.

    Here’s the syntax for uploading files with PHP to Cloudinary:

    Copy to clipboard
    public static function upload($file, $options = array())

    See these examples of what you can pass to the $options argument:

  • A custom public ID:

    Copy to clipboard
    \Cloudinary\Uploader::upload('my_image.jpg', array("public_id" => "manutd_id"));
  • The name of the uploaded file:

    Copy to clipboard
    \Cloudinary\Uploader::upload('sample.jpg', array("use_filename" => TRUE));
  • An image, a video, or a RAW file:

    Copy to clipboard
    \Cloudinary\Uploader::upload("spreadsheet.xls", array("resource_type" => "auto"));

For details on all the upload options, see the related Cloudinary documentation.

Conclusion

Uploading PHP images files to Cloudinary is hassle free. Once you’ve completed that task, you no longer need to store files on your host server. Do take advantage of dedicated cloud-storage services like Cloudinary, which also performs the invaluable task of serving files securely to web apps through content delivery networks (CDNs).


Want to Learn More About File Uploads?

Recent Blog Posts

Overlaying Glasses Or Masks on Avatars With Vue.js and Cloudinary

Deep learning, a subset of machine learning, breaks down tasks in ways that make all kinds of machine assists possible. With deep learning, you can identify images by machine, i.e., instead of hand-coding software with specific instructions for a task, you train the machine with large amounts of data and algorithms that enable it to learn how to perform the task.

Read more
On-Demand Viewing of Live Video Presents New Opportunities

In early 2020, Cloudinary was planning its fourth annual ImageCon conference, a two-day event in the heart of San Francisco, where we’d congregate with curious digital-media minds to brainstorm best practices for media management. Instead, the COVID-19 pandemic forced the entirety of ImageCon 2020 online. As with all other events being planned, we had to overhaul the content to be communicated on video. Gratifyingly, we found the right partner—the event platform Bizzabo—to turn that into a reality.

Read more
Why the Future of E-commerce Is Live

In a previous post, I discussed how “going live” is gaining popularity across industries and verticals. What began as a way for gamers to jam together has evolved into a medium for broader entertainment and business purposes. To continue the conversation, this post unpacks the current trends of shoppable live streams to shine a light on how brands are leveraging “lives” to connect with shoppers in new ways.

Read more
An Overview of Live-Streaming Video Trends

“Let’s go live.” For decades, that’s what newscasters say as they cut to real-time footage of a colleague reporting in the field. The live-video feed adds visual interest and perspective to a story beyond what can be communicated by someone sitting behind the news desk. In the same way, live-streaming video nowadays adds context to other consumer environments. From gaming and events to shopping and social media, “going live” enhances everyday experiences, and it’s something anyone can do with relative ease.

Read more