somehow-digital/imgproxy
Composer 安装命令:
composer require somehow-digital/imgproxy
包简介
README 文档
README
imgproxy URL Builder is a PHP library for generating imgproxy
URLs in a type-safe, immutable, and composable way.
Features
- Immutable URL builder object
- Fluent API via method chaining
- Extensible test suite
- Supports all
imgproxyoptions - Supports
imgproxychained pipelines - Supports
imgproxysource URL masking - Supports
imgproxyURL signing
Installation
composer require somehow-digital/imgproxy
Usage
Basic URL
use SomehowDigital\ImgProxy\Url; $url = new Url(); $url = $url->source('https://example.com/image.jpg'); $url = $url->options( new Width(100), new Height(100), ); $url->build(); // _/w:100/h:100/plain/https%3A%2F%2Fexample.com%2Fimage.jpg
Chained pipeline
use SomehowDigital\ImgProxy\Url; $url = new Url(); $url = $url->source('https://example.com/image.jpg'); $url = $url->options( new Crop(1000, 1000), [ new Width(100), new Height(100), ], ); $url->build(); // _/c:1000:1000/-/w:100/h:100/plain/https%3A%2F%2Fexample.com%2Fimage.jpg
Base64-Encoded Source URL
use SomehowDigital\ImgProxy\Url; $url = new Url( new EncodingMasker(), ); $url = $url->source('https://example.com/image.jpg'); $url = $url->options( new Width(100), new Height(100), ); $url->build(); // _/w:100/h:100/aHR0cHM6Ly9leGFtcGxlLmNvbS9pbWFnZS5qcGc
HMAC-Encrypted Source URL
use SomehowDigital\ImgProxy\Url; $url = new Url( new EncryptionMasker(ENCRYPTION_KEY), ); $url = $url->source('https://example.com/image.jpg'); $url = $url->options( new Width(100), new Height(100), ); $url->build(); // _/w:100/h:100/enc/p5VjorNdhs7mRRw8.jpg
Signed URL
use SomehowDigital\ImgProxy\Url; $url = new Url( new EncryptionMasker(ENCRYPTION_KEY), new Signer(SIGNATURE_KEY, SIGNATURE_SALT), ); $url = $url->source('https://example.com/image.jpg'); $url = $url->options( new Width(100), new Height(100), ); $url->build(); // oKfUtW34Dvo2BGQe/w:100/h:100/enc/p5VjorNdhs7mRRw8.png
Fluent API
use SomehowDigital\ImgProxy\Url; $url = Url::create( new EncryptionMasker(ENCRYPTION_KEY), new Signer(SIGNATURE_KEY, SIGNATURE_SALT), ) ->source('https://example.com/image.png') ->options( new Width(100), new Height(100), ) ->build(); // oKfUtW34Dvo2BGQe/w:100/h:100/enc/p5VjorNdhs7mRRw8.png
统计信息
- 总下载量: 853
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 1
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2026-02-19