PHP と Qiniu クラウド ストレージ インターフェイスを使用して画質圧縮と形式変換を実現する方法

王林
リリース: 2023-07-09 10:18:02
オリジナル
1166 人が閲覧しました

PHP と Qiniu クラウド ストレージ インターフェイスを使用して画像の高品質な圧縮と形式変換を実現する方法

はじめに:
Web 開発では、多くの場合、画像の高品質な圧縮と形式変換を実行する必要があります。ページの読み込み速度と帯域幅の節約を改善するため。この記事では、PHP と Qiniu クラウド ストレージ インターフェイスを使用してこの機能を実装する方法を紹介します。同時に、読者が理解しやすく応用しやすいように、詳細なコード例を示します。

前提条件の準備:
開始する前に、次のものを準備する必要があります:

  1. Qiniu クラウド ストレージ アカウントと API 構成が完了しました。
  2. Apache、Nginx などの PHP 開発環境。
  3. Qiniu Cloud Storage の PHP SDK をインストールします。

ステップ 1: Qiniu Cloud Storage の PHP SDK をインストールする

  1. ターミナルを開き、プロジェクトが存在するディレクトリに切り替えます。
  2. 次のコマンドを実行して、Qiniu Cloud Storage の PHP SDK をインストールします。

    composer require "qiniu/php-sdk"
    ログイン後にコピー
  3. インストールが完了したら、コードの記述を開始できます。

ステップ 2: 品質圧縮と形式変換のコード実装
次は、画像の品質圧縮と形式変換のための単純な PHP 関数です:

<?php
require 'vendor/autoload.php'; // 引入七牛云存储的PHP SDK

// 设置七牛云存储的Access Key和Secret Key
$accessKey = 'YOUR_ACCESS_KEY';
$secretKey = 'YOUR_SECRET_KEY';

// 设置要上传的空间
$bucket = 'YOUR_BUCKET';

// 设置图片的样式,包括质量压缩和格式转换
$style = 'imageView2/2/q/75|sys_png';

// 压缩并转换图片的函数
function compressAndConvertImage($path, $key)
{
    global $accessKey, $secretKey, $bucket, $style;

    // 构建Auth对象
    $auth = new QiniuAuth($accessKey, $secretKey);

    // 构建图片对象
    $image = new QiniuStorageUploadManager();

    // 上传图片并压缩、转换格式
    list($ret, $err) = $image->putFile(
        $auth->uploadToken($bucket), 
        $key, 
        $path . $key + '?'.$style
    );

    if ($err !== null) {
        // 上传失败,打印错误信息
        echo $err;
        return false;
    } else {
        // 上传成功,返回七牛云存储中的图片URL
        return $ret['key'];
    }
}

// 测试函数
$imagePath = '/path/to/image/'; // 图片所在的路径
$imageKey = 'example.jpg'; // 图片的文件名

$imageURL = compressAndConvertImage($imagePath, $imageKey);
echo '压缩并转换后的图片URL:' . $imageURL;
?>
ログイン後にコピー

上記のコード内, まず、Qiniu Cloud Storage の PHP SDK を導入し、Qiniu Cloud Storage のアップロードするアクセス キー、シークレット キー、スペースを設定しました。次に、compressAndConvertImage という名前の関数が定義されており、画像の圧縮と変換に使用されます。この関数は、イメージが配置されているパスとイメージのファイル名という 2 つのパラメーターを受け入れます。この関数では、Auth オブジェクトと UploadManager オブジェクトを通じて、画像のアップロード、圧縮、形式変換が実装されます。最後に、compressAndConvertImage 関数を呼び出してテストし、圧縮および変換された画像の URL を出力します。

結論:
上記の手順により、PHP と Qiniu クラウド ストレージ インターフェイスを使用して、画質の圧縮と形式の変換を簡単に実現できます。これにより、Web サイトの読み込み速度とユーザー エクスペリエンスが向上するだけでなく、帯域幅とストレージ スペースも節約できます。この記事がお役に立てば幸いです!

以上がPHP と Qiniu クラウド ストレージ インターフェイスを使用して画質圧縮と形式変換を実現する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート