Π£ΡΡΠ°Π½ΠΎΠ²ΠΊΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°
composer require doris/yii2-compressor "*"
, (*1)
ΠΠ»Ρ ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ ΠΊΠ»ΡΡΠ° ΠΈ Π΄ΠΎΠΌΠ΅Π½Π° Π² common/config/params
Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ»ΠΎΠΆΠΈΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ:
, (*2)
'ImageCompressor' => [
'key' => "ΠΠ»ΡΡ Π΄Π»Ρ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΡΠ°ΠΉΡΠ°",
'domain' => "ΠΠΎΠΌΠ΅Π½ Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΏΡΠ°Π²Π»ΡΡΡΡ Π·Π°ΠΏΡΠΎΡ"
]
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:, (*3)
- $key - ΠΠ»ΡΡ ΠΊΠΎΡΠΎΡΡΠΉ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ Π½Π° ΡΠ°ΠΉΡΠ΅ ΠΈ ΠΏΡΠΈΠ²ΡΠ·Π°Π½ ΠΊ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡ ΠΏΡΠΎΠ΅ΠΊΡΡ.
- $domain - ΠΠΎΠΌΠ΅Π½ Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»ΠΎΠΌ, ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ http://test.com.ua
Π Π°Π±ΠΎΡΠ° Ρ ΡΠ°ΠΉΡΠ°
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ:
, (*4)
use doris\compressor\CompressorApi;
try {
$compressor = new CompressorApi();
$compressor->setPathToImage('/images/test.png')
->setPathToSave('/uploads/products')
->setAlias('@web')
->setCustomName('mockup')
$imagePath = $compressor->compress(77);
catch (Exception $e) {
$message = $e->getMessage();
}
ΠΠ»Π°ΡΡ CompressorApi ΠΈΠΌΠ΅Π΅Ρ ΡΡΠ΄ ΡΠ΅ΡΡΠ΅ΡΠΎΠ² (ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΏΠ°ΡΡΠ΅ΡΠ½ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°):, (*5)
- setPathToImage - ΠΏΡΡΡ ΠΊ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π°Π΄Π°Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ°. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ.
- setPathToSave - ΠΏΡΡΡ ΠΊ Π΄Π΅ΡΠΈΠΊΡΠΎΡΠΈΠΈ Π΄Π»Ρ ΡΠΎΡ
ΡΠ°Π½Π΅Π½ΠΈΡ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΠΎ Π·Π°Π΄Π°Π½ΠΎΠ³ΠΎ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌΠ°. ΠΡΠ»ΠΈ Π½Π΅ Π·Π°Π΄Π°Π½ - ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΠΈΡΠ°Π½Π°. ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ.
- setAlias - Π·Π°Π΄Π°Π΅Ρ ΠΏΡΠ΅Π²Π΄ΠΎΠ½ΠΈΠΌ ΠΏΡΡΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ '@webroot'. ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ.
- setCustomName - ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ Π½ΠΎΠ²ΠΎΠ΅ ΠΈΠΌΡ Π΄Π»Ρ ΡΠΆΠ°ΡΠΎΠΉ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ. ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ.
Π Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²:, (*6)
- compress - Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ Π²Π°Π»ΠΈΠ΄Π½ΡΠΉ ΠΏΡΡΡ Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ Π½Π° ΡΠ°ΠΉΡΠ΅. ΠΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΡΠΊΠ°Π·ΡΠ²Π°ΡΡΠΈΠΉ ΡΡΠ΅ΠΏΠ΅Π½Ρ ΡΠΆΠ°ΡΠΈΡ (ΠΎΡ 0 Π΄ΠΎ 100). ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ 85.
- deleteOriginal - ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΎΡΠΈΠ³ΠΈΠ½Π°Π» ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ. ΠΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΊΠ°ΠΊ true ΠΈΠ»ΠΈ false.
ΠΠ°ΠΆΠ΄Π°Ρ ΠΎΡΠΈΠ±ΠΊΠ° (ΠΊ ΠΏΡΠΈΠΌΠ΅ΡΡ Π΅ΡΠ»ΠΈ ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½ΠΎΠΌΡ ΠΏΡΡΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ° Π½Π΅ Π±ΡΠ»Π° Π½Π°ΠΉΠ΄Π΅Π½Π°) Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅Ρ exception ΠΏΠΎ-ΡΡΠΎΠΌΡ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ try catch Π΄Π»Ρ Π΅Π³ΠΎ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠΈ., (*7)
Π Π°Π±ΠΎΡΠ° Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ
ΠΡΠ»ΠΈ Π΅ΡΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΡ Ρ ΠΊΠΎΠ½ΡΠΎΠ»ΠΈ ΡΡΠΎΠΈΡ Π·Π°ΡΠ΅Π³ΠΈΡΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ Π² console/config/main
, (*8)
'modules' => [
'compressor' => 'doris\compressor\Modules\Console\Handler',
],
ΠΠΎΠΌΠ°Π½Π΄Π° Π΄Π»Ρ ΡΠΆΠ°ΡΠΈΡ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΠ½ΡΠΎΠ»Ρ:, (*9)
yii compressor $path $recursive
ΠΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:, (*10)
- $path - ΠΡΡΡ ΠΊ ΠΈΠ·ΠΎΠ±ΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ Π½Π°ΡΠΈΠ½Π°Ρ Ρ web. Π ΠΏΡΠΈΠΌΠ΅ΡΡ
\images
. ΠΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ.
- $recursive - Π€Π»Π°Π³ ΠΊΠΎΡΠΎΡΡΠΉ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½ΡΠΆΠ½ΠΎ Π»ΠΈ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ Π΄ΠΎΡΠ΅ΡΠ½ΠΈΠ΅ Π΄Π΅ΡΠΈΠΊΡΠΎΡΠΈΠΈ.
ΠΡΠ»ΠΈ true - Π±ΡΠ΄Π΅Ρ ΠΏΠ΅ΡΠ΅Π±ΠΈΡΠ°ΡΡ Π²ΡΠ΅ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π΄Π΅ΡΠΈΠΊΡΠΎΡΠΈΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ true. ΠΠΏΡΠΈΠΎΠ½Π°Π»ΡΠ½ΠΎ.