Image Procession Procession အရ PHP ၏ Imperfulfip () function သည်ဘုံကိရိယာတစ်ခုဖြစ်သည်။ ၎င်းသည်ဒေါင်လိုက်သို့မဟုတ်နှစ် ဦး စလုံးအလွယ်တကူလှန်လှောကြည့်ရှုနိုင်သည် သို့သော်ဤလုပ်ဆောင်မှု၏အပြုအမူသည်ကွဲပြားခြားနားသော runtime ပတ်ဝန်းကျင်တွင်အနည်းငယ်ကွဲပြားနိုင်သည် (command line cli နှင့် web browser) အောက်တွင်အနည်းငယ်ကွဲပြားနိုင်သည်။ ဤကွဲပြားခြားနားမှုများကိုဤဆောင်းပါးတွင်အသေးစိတ်ဆွေးနွေးပြီးဥပမာကုဒ်ဖြင့်သရုပ်ဖော်သည်။
ImageFlip () သည် PHP 5.5.0 ကိုရိုက်ကူးရန် PHP 5.5.0 ပြီးနောက်မိတ်ဆက်ပေးသည့်လုပ်ဆောင်ချက်တစ်ခုဖြစ်သည်။ function ကိုလက်မှတ်သည်အောက်ပါအတိုင်းဖြစ်သည် -
bool imageflip(GdImage $image, int $mode)
$ mode ၏ optional ကိုတန်ဖိုးမှာအောက်ပါအတိုင်းဖြစ်သည် -
img_flip_horizontal : အလျားလိုက်လှန်
img_flip_vertical : ဒေါင်လိုက်လှန်
img_flip_both : အလျားလိုက်နှင့်ဒေါင်လိုက်လှန်လှောင်ပြောင်ကိုတစ်ပြိုင်နက်တည်းလုပ်ဆောင်ပါ
Impflip () ကို CLI နှင့် Web ပတ် 0 န်းကျင်တွင်တူညီသောနည်းတူအသုံးပြုသော်လည်း PHP သည်ကွဲပြားခြားနားသောလည်ပတ်နေသောပတ်ဝန်းကျင်တွင်ကွဲပြားခြားနားစွာကွဲပြားခြားနားစွာကိုင်တွယ်သောကြောင့် developer များဤလုပ်ဆောင်မှုကိုအသုံးပြုသောအခါအောက်ပါကွဲပြားမှုများကိုအာရုံစိုက်ရန်လိုအပ်သည် -
0 က်ဘ်ဝန်းကျင်ရှိဝက်ဘ်ဆိုက်တစ်ခုတွင်ကျွန်ုပ်တို့သည်ပုံမှန်အားဖြင့် header မှတဆင့် browser ကို browser သို့ထုတ်ပေးသည်။
<?php
$image = imagecreatefromjpeg('input.jpg');
imageflip($image, IMG_FLIP_HORIZONTAL);
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
?>
ဤကုဒ်သည်ဝက်ဘ်ပတ်ဝန်းကျင်တွင်ပြေးသောအခါ browser ရှိပုံရိပ်ကို browser တွင်တိုက်ရိုက်ဖော်ပြလိမ့်မည်။
CLI အောက်တွင် header () သည်မမှန်ကန်ပါ,
<?php
$image = imagecreatefromjpeg('input.jpg');
imageflip($image, IMG_FLIP_HORIZONTAL);
imagejpeg($image, 'output.jpg');
imagedestroy($image);
echo "ပုံရိပ်ကိုကယ်တင်ခြင်းသို့ရောက်ပြီ output.jpg\n";
?>
0 က်ဘ်ဆိုက်များသည်များသောအားဖြင့်ဆွေမျိုးလမ်းကြောင်းများကို အသုံးပြု. ဆာဗာ root directory မှကန့်သတ်ထားသည်။ ဥပမာအားဖြင့်:
ဝဘ်ပတ်ဝန်းကျင်တွင်:
$image = imagecreatefrompng('images/input.png'); // ဆွေမျိုး web အညွှန်းရှာဖွေရန်
CLI ပတ်ဝန်းကျင်၌:
$image = imagecreatefrompng('/home/user/images/input.png'); // အကြွင်းမဲ့အာဏာလမ်းကြောင်းများပိုမိုများဖြစ်ကြသည်
0 က်ဘ်ပတ် 0 န်းကျင်တွင်အသုံးပြုသောအသုံးပြုသူသည်များသောအားဖြင့် www-data , apache စသည်များနှင့်ခွင့်ပြုချက်အကန့်အသတ်ရှိသည်။ CLI သည်ယေဘုယျအားဖြင့်လက်ရှိစနစ်အသုံးပြုသူအနေဖြင့်အသုံးပြုနေစဉ်, ထို့ကြောင့်ဝက်ဘ်အောက်ရှိဖိုင်များကိုရေးသားသည့်အခါသင်ပစ်မှတ်လမ်းညွှန်သည်သင့်လျော်သောခွင့်ပြုချက်ရရှိရန်သေချာသင့်သည်။ ဥပမာအားဖြင့်:
// Web ပတ်ဝန်းကျင်ကျရှုံးလိမ့်မည်:
imagejpeg($image, '/var/www/html/uploads/flipped.jpg');
// အသုံးပြုရန်အကြံပြုသည် m66.net ထောက်ပံ့ပေးသို့မဟုတ်ယာယီတင်ခြင်းလမ်းညွှန် CDN စကားပေြာဟော,ဥပမာအားဖြင့်:
imagejpeg($image, '/var/www/html/m66.net/tmp/flipped.jpg');
<?php
$source = 'https://m66.net/images/sample.jpg';
$inputPath = 'input.jpg';
// ပုံကို download လုပ်ပါ
file_put_contents($inputPath, file_get_contents($source));
$image = imagecreatefromjpeg($inputPath);
imageflip($image, IMG_FLIP_BOTH);
// operating ပတ်ဝန်းကျင်ကိုဆုံးဖြတ်ပါ
if (php_sapi_name() === 'cli') {
imagejpeg($image, 'flipped.jpg');
echo "အဆိုပါလှန်ပုံရိပ်အဖြစ်သိမ်းဆည်းထားပါတယ် flipped.jpg\n";
} else {
header('Content-Type: image/jpeg');
imagejpeg($image);
}
imagedestroy($image);
?>