[herokuアドオン]cloudinaryで画像のアップロードと表示[PHP]
PHPを利用して、cloudinaryにアップロードして、画像を表示させてみた。
インストール
composerを利用。
1 2 3 4 5 |
|
インストール。
1 2 3 4 5 6 7 8 |
|
herokuにインストール
アドオンを追加。
1 2 3 4 5 |
|
環境変数のCLOUDINARY_URL
でアカウント情報を取得できる。
アップロード
以下のコードを記述し、アクセス。
flickr上にある画像をアップロードしている。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
|
で、結果は以下のように返ってくる。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
|
URLでの表示
アップロードが完了したものはアクセスするURLを変更することでサイズなどを変更できる。
オリジナル
http://res.cloudinary.com/dalir2yty/image/upload/xa9kfgp9jvxouekmrrqu_nml8db.jpg
リサイズ
http://res.cloudinary.com/dalir2yty/image/upload/w_100,h_100/xa9kfgp9jvxouekmrrqu_nml8db.jpg
角丸
http://res.cloudinary.com/dalir2yty/image/upload/w_320,h_240,c_fill,r_20/xa9kfgp9jvxouekmrrqu_nml8db.jpg
利用できるタグなどは以下を参照。
Image transformations | Cloudinary
PHPでURLの生成
上記のURLをPHPのコードで生成する。
cl_image_tag
cl_image_tag
を利用すると、<img>
のタグごと出力される。
$public_id = 'xa9kfgp9jvxouekmrrqu';
echo cl_image_tag($public_id, array( "alt" => "Sample Image" ));
結果
<img src='https://res.cloudinary.com/harslxcej/image/upload/xa9kfgp9jvxouekmrrqu' alt='Sample Image'/>
加工
cl_image_tag($public_id, array(
"width" => 100,
"height" => 100,
"crop" => "fill",
"effect" => "grayscale"
));
結果
<img src='http://res.cloudinary.com/dalir2yty/image/upload/c_fill,e_grayscale,h_100,w_100/xa9kfgp9jvxouekmrrqu_nml8db.jpg' height='100' width='100'/>
cloudinary_url
URLを直接取得するには、cloudinary_url
を使用する。
echo cloudinary_url($public_id);
echo cloudinary_url($public_id, array(
"width" => 100,
"height" => 100,
"crop" => "fill",
"effect" => "grayscale"
));
その他、詳しくは以下を参照。
PHP image manipulation | Cloudinary
参考
PHP integration | Cloudinary
PHPフレームワークのPhalconで、写真ストレージクラウドのCloudinaryと連携 一言多いプログラマーの独り言
cloudinary/cloudinary_php