လက်ရှိတည်နေရာ: ပင်မစာမျက်နှာ> နောက်ဆုံးရဆောင်းပါးများစာရင်း> Zend Framework Middleware application application: ပုံများနှင့်မာလ်တီမီဒီယာအကြောင်းအရာများကိုထိရောက်စွာလုပ်ဆောင်ခြင်း

Zend Framework Middleware application application: ပုံများနှင့်မာလ်တီမီဒီယာအကြောင်းအရာများကိုထိရောက်စွာလုပ်ဆောင်ခြင်း

M66 2025-06-07

နိဒါန်း zend framework monenwork မှနိဒါန်း

Zend Framework သည် Web application ဖွံ့ဖြိုးတိုးတက်မှု၏စွမ်းဆောင်ရည်ကိုတိုးတက်စေနိုင်သောအစိတ်အပိုင်းများနှင့်ကိရိယာများကိုတိုးတက်စေနိုင်သောအစိတ်အပိုင်းများနှင့်ကိရိယာများကိုထောက်ပံ့ပေးသောအစိတ်အပိုင်းများနှင့်ကိရိယာများကိုထောက်ပံ့ပေးသည်။ ဤဆောင်းပါးသည် zend framework middleware ၏လက်တွေ့ကျသောအခြေအနေများနှင့်အထူးသဖြင့်ပုံရိပ်နှင့်မာလ်တီမီဒီယာတောင်းဆိုမှုများကိုထိရောက်စွာလုပ်ဆောင်ရန်နှင့်အထူးသဖြင့် Middleward ကိုအသုံးပြုနည်း။

Zend Framework နှင့်သက်ဆိုင်သောအစိတ်အပိုင်းများကိုထည့်သွင်းပါ

Composer မှတဆင့် Zend Framework ၏ zend framework ၏ zend framework ၏ဖော်ပြရန်နှင့် http handler runner အစိတ်အပိုင်းများကိုအရင်ထည့်သွင်းရန်နှင့်အောက်ပါ command ကို အသုံးပြု. တပ်ဆင်မှုကိုဖြည့်စွက်ရန်လိုအပ်သည်။

 
composer require zendframework/zend-expressive zendframework/zend-httphandlerrunner

တပ်ဆင်မှုပြီးဆုံးသည်နှင့်တပြိုင်နက်သင်သည်တောင်းဆိုမှုကိုလုပ်ဆောင်ရန် Middleware ဗိသုကာကိုစတင်အသုံးပြုနိုင်သည်။

PSR-15 Middleware အသေးစိတ်အချက်အလက်များကိုနားလည်ပါ

Zend Framework ၏ Middleware အကောင်အထည်ဖော်မှုသည် HTTP တောင်းဆိုမှုများနှင့်တုန့်ပြန်မှုများအကြားအပြောင်းအလဲနဲ့ interface ကိုသတ်မှတ်သည့် PSR-15 စံသတ်မှတ်ချက်ကိုလိုက်နာသည်။ ကျွန်ုပ်တို့သည်ဤ interfaces များကိုအကောင်အထည်ဖော်ခြင်းဖြင့်အပြောင်းအလဲနဲ့ယုတ္တိဗေဒကိုစိတ်ကြိုက်ပြင်ဆင်နိုင်သည်။ ဤတွင်ရုပ်ပုံများကိုပြုပြင်ခြင်းအတွက် middleware ၏ဥပမာတစ်ခုဖြစ်သည်။

 
use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Psr\Http\Server\MiddlewareInterface;
use Psr\Http\Server\RequestHandlerInterface;

class ImageResizeMiddleware implements MiddlewareInterface
{
    public function process(ServerRequestInterface $request, RequestHandlerInterface $handler): ResponseInterface
    {
        // ပုံကိုတောင်းဆိုမှုမှရယူပါURL
        $imageUrl = $request->getQueryParams()['image'];

        // ပုံရိပ်ထုတ်ယူခြင်းလုပ်ဆောင်ချက်
        $resizedImage = $this->resizeImage($imageUrl);

        // ပြုပြင်ထားသောပုံကိုပြန်ပို့ရန်တုန့်ပြန်မှုအသစ်တစ်ခုကိုဖန်တီးပါ
        $response = new \Zend\Diactoros\Response();
        $response->getBody()->write($resizedImage);

        return $response;
    }

    private function resizeImage($imageUrl)
    {
        // အမှန်တကယ်ပုံရိပ်ထုတ်ယူခြင်းယုတ္တိဗေဒ
        // ...
    }
}

Middleware သည်တောင်းဆိုမှု parameters များထံမှပုံရိပ်လိပ်စာကိုထုတ်ယူသည်။

app တွင် middleware ကိုမှတ်ပုံတင်ပါ

application တွင် middleware အကျိုးသက်ရောက်ရန်အတွက်လျှောက်လွှာတင်ပြချက်တွင်ကျွန်ုပ်တို့မှတ်ပုံတင်ရန်လိုအပ်သည်။ index.php ဖိုင်တစ်ခုကိုဖန်တီးပြီးအောက်ပါတို့ကိုရေးပါ။

 
use Zend\Expressive\AppFactory;

$app = AppFactory::create();

$app->pipe(ImageResizeMiddleware::class);

$app->run();

ပိုက်လိုင်း () နည်းလမ်း () method ကိုမှတဆင့်, တောင်းဆိုမှုကိုအပြောင်းအလဲနဲ့လုပ်ငန်းစဉ်တွင်ထည့်သွင်းထားသည်။ အသုံးပြုသူသည်သတ်မှတ်ထားသော URL ကိုအသုံးပြုသောအခါဤမြေအရင်းသည်အလိုအလျောက်ပစ်ခတ်လိမ့်မည်။

Middleware ၏လက်တွေ့ကျတဲ့လျှောက်လွှာ

သင်၏ PHP application ကိုသင် PHP လျှောက်လွှာကိုစတင်ပြီးနောက် http: // localhost: 8000 : Middleware ကိုမှန်ကန်စွာကိုင်တွယ်ခြင်းရှိမရှိစစ်ဆေးနိုင်သည်။

 
http://localhost:8000/?image=http://example.com/image.jpg

ဤတောင်းဆိုချက်အရ Image URL သည် parameter တစ်ခုအနေဖြင့်ဖြတ်သန်းသွားသည်။ ဤချဉ်းကပ်မှုသည် 0 က်ဘ်အပလီကေးရှင်းများသို့အလွန်ပြောင်းလွယ်ပြင်လွယ်နှင့်အသက်သာခံမှုကိုရရှိစေသည်။

အကျဉ်းချုပ်

Zend Framework ၏ Middleware ၏ Middleware ၏ဗိသုကာမှတစ်ဆင့်ကျွန်ုပ်တို့သည်ပုံများနှင့်မာလ်တီမီဒီယာအကြောင်းအရာများကိုရှင်းလင်းပြတ်သားစွာနှင့်ဖြည့်စွက်ထားသောယုတ္တိရှိသည့်ကျိုးကြောင်းဆီလျော်သောဖွဲ့စည်းပုံအောင်မြင်ရန်ထိရောက်စွာလုပ်ဆောင်နိုင်သည်။ ဤဆောင်းပါးတွင်ဥပမာများသည်ရုပ်ပုံပြုပြင်ခြင်းအခြေအနေများအတွက်အခြေခံအကောင်အထည်ဖော်မှုဆိုင်ရာအကြံဥာဏ်များပေးသည်။ developer များက cache processing, format ပြောင်းလဲခြင်း,