SDK PHP của Cloudinary cung cấp khả năng tải lên, chuyển đổi, tối ưu hóa và phân phối hình ảnh và video đơn giản nhưng toàn diện mà bạn có thể triển khai bằng cách sử dụng mã tích hợp liền mạch với ứng dụng PHP hiện tại của mình
Hướng dẫn này liên quan đến bản phát hành hiện tại của Cloudinary PHP SDK v2. x
- Để biết thông tin về bản phát hành chính trước đó của PHP SDK, hãy xem PHP SDK 1. tài liệu x. Xem hướng dẫn Di chuyển PHP SDK để biết thêm thông tin về cách di chuyển từ phiên bản 1. x lên phiên bản 2. x của SDK PHP
- Để biết chi tiết về tất cả các tính năng mới và bản sửa lỗi từ các bản phát hành trước của phiên bản 2. x, hãy xem THAY ĐỔI
- Theo mặc định, các URL được tạo bằng SDK này bao gồm một tham số truy vấn sử dụng SDK được nối thêm. Cloudinary theo dõi dữ liệu tổng hợp từ tham số này để cải thiện các phiên bản SDK trong tương lai và không có dữ liệu riêng lẻ nào được thu thập. Nếu cần, bạn có thể tắt tùy chọn cấu hình
url=>analytics
.
Hãy xem đoạn mã chuyển đổi sau đây và hình ảnh mà nó mang lại
PHP [cloudinary_php 2. x]
[new ImageTag['front_face.png']] ->resize[Resize::thumbnail[]->width[150]->height[150]->gravity[Gravity::focusOn[FocusOn::face[]]]] ->roundCorners[RoundCorners::byRadius[20]] ->effect[Effect::sepia[]] ->overlay[ Overlay::source[Source::image['cloudinary_icon_blue'] ->transformation[[new ImageTransformation[]] ->adjust[Adjust::brightness[]->level[100]] ->adjust[Adjust::opacity[60]] ->resize[Resize::scale[]->width[50]]]] ->position[[new Position[]] ->gravity[Gravity::compass[Compass::southEast[]]] ->offsetX[5]->offsetY[5]]] ->rotate[Rotate::byAngle[10]];
Mã tương đối đơn giản này thực hiện tất cả những điều sau đây trên front_face ban đầu. jpg trước khi gửi nó
- Cắt thành hình thu nhỏ 150x150 bằng trọng lực nhận diện khuôn mặt để tự động xác định vị trí cắt
- Làm tròn các góc với bán kính 20 pixel
- Áp dụng hiệu ứng nâu đỏ
- Phủ logo Cloudinary lên góc đông nam của hình ảnh [với độ lệch nhẹ]. Biểu trưng được thu nhỏ lại với chiều rộng 50 pixel, với độ sáng tăng lên và độ trong suốt một phần [độ mờ = 60%]
- Xoay hình ảnh kết quả [bao gồm cả lớp phủ] 10 độ
- Chuyển đổi và phân phối hình ảnh ở định dạng PNG [hình ảnh được tải lên ban đầu là JPG]
Và đây là URL sẽ được bao gồm trong thẻ hình ảnh được tạo tự động từ đoạn mã trên
Theo cách tương tự, bạn có thể
Tìm hiểu thêm về chuyển đổi
Đoạn mã PHP sau tải video dog.mp4
lên thư mục con được chỉ định bằng cách sử dụng public_id, my_dog
. Video sẽ ghi đè lên video my_dog
hiện có nếu nó tồn tại. Khi quá trình tải lên video hoàn tất, URL thông báo được chỉ định sẽ nhận được thông tin chi tiết về nội dung phương tiện đã tải lên
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];
Khi sử dụng SDK PHP, hãy ghi nhớ những nguyên tắc này
- Tên thuộc tính.
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];
0. Ví dụ. công khai - Các lớp học.
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];
1. Ví dụ. Thẻ hình ảnh - Truyền dữ liệu tham số dưới dạng.
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];
2
Sử dụng
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];3 để quản lý sự phụ thuộc vào thư viện PHP của bạn và cài đặt thư viện PHP của Cloudinary trực tiếp từ kho lưu trữ Packagist
Cập nhật tệp
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];
4 của bạn như sau{ "require": { "cloudinary/cloudinary_php": "^2" } }
Tự động cài đặt các phụ thuộc bao gồm gói PHP của Cloudinary
[Nếu bạn không có các quyền cần thiết, bạn có thể tự chạy tệp.
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];
5]
Đảm bảo rằng trình soạn nhạc tự động tải. php được yêu cầu trong bất kỳ tệp nào sẽ bao gồm mã Cloudinary, chẳng hạn.
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];6
Để sử dụng thư viện Cloudinary PHP, bạn phải định cấu hình ít nhất
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];7 của mình.
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];8 và
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];9 của bạn cũng cần thiết cho lệnh gọi API an toàn tới Cloudinary [e. g. , tải lên hình ảnh và video]. Bạn có thể tìm thông tin đăng nhập cấu hình môi trường sản phẩm của mình trong trang Bảng điều khiển của Bảng điều khiển Cloudinary
Ngoài các thông số cấu hình bắt buộc, bạn có thể xác định một số tùy chọn nếu phù hợp
Việc đặt tham số cấu hình có thể được thực hiện trên toàn cầu, sử dụng biến môi trường hoặc phương thức
{ "require": { "cloudinary/cloudinary_php": "^2" } }0 hoặc lập trình trong mỗi lệnh gọi đến phương thức Cloudinary. Các tham số được đặt trong lệnh gọi phương thức Cloudinary sẽ ghi đè các tham số được đặt trên toàn cầu
Bạn có thể định cấu hình
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];7,
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];8 và
[new UploadApi[]]->upload['dog.mp4', [ 'folder' => 'myfolder/mysubfolder/', 'public_id' => 'my_dog', 'overwrite' => true, 'notification_url' => '//mysite.example.com/notify_endpoint', 'resource_type' => 'video']];9 được yêu cầu bằng cách xác định biến môi trường CLOUDINARY_URL. Giá trị CLOUDINARY_URL có sẵn trong trang Bảng điều khiển của Bảng điều khiển Cloudinary. Khi sử dụng Cloudinary thông qua tiện ích bổ sung PaaS [e. g. , Heroku hoặc AppFog], biến môi trường này được xác định tự động trong môi trường triển khai của bạn. Ví dụ
CLOUDINARY_URL=cloudinary://my_key:my_secret@my_cloud_name
Đặt các tham số bổ sung, chẳng hạn như upload_prefix và cname, cho biến môi trường
CLOUDINARY_URL=cloudinary://my_key:my_secret@my_cloud_name?cname=mydomain.com&upload_prefix=myprefix.com
Đây là một ví dụ về cài đặt các tham số cấu hình trên toàn cầu trong ứng dụng PHP của bạn bằng cách sử dụng một thể hiện của lớp
{ "require": { "cloudinary/cloudinary_php": "^2" } }4
Nếu bạn yêu cầu nhiều phiên bản, bạn có thể sử dụng đối tượng
{ "require": { "cloudinary/cloudinary_php": "^2" } }5 để định cấu hình từng phiên bản, chẳng hạn
Bạn cũng có thể cấu hình tham số cho instance thông qua biến môi trường chẳng hạn
$cloudinary = new Cloudinary['cloudinary://my_key:my_secret@my_cloud_name?url[secure]=true&url[cname]=my_site.com']
Bạn cũng cần bao gồm các lớp bạn sử dụng trong mã của mình, mặc dù IDE của bạn sẽ cảnh báo bạn khi bạn cần bao gồm một lớp. Tất cả các không gian tên và lớp có sẵn được tìm thấy trong thư mục src của SDK PHP và trong hướng dẫn tham khảo PHP