ကိစ္စရပ်အတော်များများတွင်တင်ထားသောရုပ်ပုံများကိုရိုက်ကူးခြင်းကြောင့်တင်ထားသောရုပ်ပုံများကိုဆာဗာဘေးတွင်လှန်ပစ်ရန်လိုအပ်သည်။ PHP ကိုအသုံးပြုသောအခါတင်ထားသောတင်ထားသောပုံများကိုအလိုအလျောက်လှန်လှောကြည့်ရှုရန်မည်သို့ပြုလုပ်ရမည်နည်း။ ဤဆောင်းပါးသည် PHP နှင့် GD စာကြည့်တိုက်များကိုပုံများတင်ရန်နှင့်၎င်းတို့ကိုတင်သည့်အခါအလိုအလျောက်လှန်လှောကြည့်ရှုရန်မည်သို့အသုံးပြုရမည်ကိုရှင်းပြပါမည်။
PHP သည် GD စာကြည့်တိုက်တွင်ပါ 0 င်ပြီး Image processing အတွက်အသုံးပြုနိုင်သည်။ ပထမ ဦး စွာသင်၏ PHP ပတ် 0 န်းကျင်တွင် GD စာကြည့်တိုက်ပါ 0 င်ကြောင်းသေချာပါစေ။ အောက်ပါကုဒ်ကိုဖွင့်ခြင်းဖြင့် GD စာကြည့်တိုက်ကိုဖွင့်ထားသလားစစ်ဆေးနိုင်သည်။
<?php
if (extension_loaded('gd')) {
echo "GDစာကြည့်တိုက်ကိုဖွင့်ထားသည်!";
} else {
echo "GDစာကြည့်တိုက်ကိုဖွင့်မထားပါ!";
}
?>
ရုပ်ပုံများကိုတင်သည့်အခါလှန်လှောကြည့်ရှုရန်မည်သို့ပြသနိုင်မည်ကိုသရုပ်ပြရန်, ရိုးရိုးပုံတင်ခြင်းပုံစံနှင့်အပြောင်းအလဲနဲ့ပြုပြင်ခြင်း ဤနေရာတွင်တင်ထားသောပုံစံနှင့်သက်ဆိုင်ရာ processing processing php code:
<!DOCTYPE html>
<html lang="zh">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Image Upload</title>
</head>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
<label for="file">ပုံကိုရွေးချယ်ပါ:</label>
<input type="file" name="file" id="file" required>
<button type="submit">တင်ပါ</button>
</form>
</body>
</html>
<?php
// 配置တင်ပါ的目标目录
$target_dir = "uploads/";
$target_file = $target_dir . basename($_FILES["file"]["name"]);
// ဖိုင်သည်ပုံတစ်ပုံရှိမရှိစစ်ဆေးပါ
if (isset($_POST["submit"])) {
$check = getimagesize($_FILES["file"]["tmp_name"]);
if ($check !== false) {
echo "ဖိုင်သည်ပုံတစ်ပုံဖြစ်သည် - " . $check["mime"] . ".";
} else {
echo "ဖိုင်သည်ပုံမဟုတ်ပါ。";
exit;
}
}
// 移动တင်ပါ的စာချုပ်စာတမ်း到目标目录
if (move_uploaded_file($_FILES["file"]["tmp_name"], $target_file)) {
echo "စာချုပ်စာတမ်း " . htmlspecialchars(basename($_FILES["file"]["name"])) . " 已成功တင်ပါ。";
} else {
echo "စိတ်မကောင်းပါဘူး,တင်ပါစာချုပ်စာတမ်း时出错。";
}
// image လှန်အပြောင်းအလဲနဲ့
function flipImage($filePath) {
// ပုံရိပ်အရွယ်အစားနှင့်အမျိုးအစားကိုရယူပါ
$image_info = getimagesize($filePath);
$image_type = $image_info[2];
// ပုံအမျိုးအစားအပေါ် အခြေခံ. ပုံရိပ်အရင်းအမြစ်များကိုဖန်တီးပါ
switch ($image_type) {
case IMAGETYPE_JPEG:
$image = imagecreatefromjpeg($filePath);
break;
case IMAGETYPE_PNG:
$image = imagecreatefrompng($filePath);
break;
case IMAGETYPE_GIF:
$image = imagecreatefromgif($filePath);
break;
default:
echo "不支持的စာချုပ်စာတမ်း类型!";
return;
}
// ပုံကိုလှန်လိုက်ပါ
$flipped_image = imagerotate($image, 180, 0); // 180ဒီဂရီအလှည့်,image flip
// လှန်ပုံကိုသိမ်းဆည်းပါ
switch ($image_type) {
case IMAGETYPE_JPEG:
imagejpeg($flipped_image, $filePath);
break;
case IMAGETYPE_PNG:
imagepng($flipped_image, $filePath);
break;
case IMAGETYPE_GIF:
imagegif($flipped_image, $filePath);
break;
}
// ပုံရိပ်အရင်းအမြစ်များကိုလွှတ်ပါ
imagedestroy($image);
imagedestroy($flipped_image);
echo "ပုံကိုအောင်မြင်စွာလှန်လိုက်ပြီ!";
}
// flip function ကိုခေါ်ဆိုခြင်း
flipImage($target_file);
?>
Upload ပုံစံ - အသုံးပြုသူသည်ပုံစံကို browser (browser မှတဆင့် တင်ပြ. Image file ကို upload လုပ်သည်။
Image procession : အသုံးပြုသူတစ် ဦး သည်ပုံတစ်ပုံကိုတင်သောအခါကျွန်ုပ်တို့သည်ဖိုင်အမျိုးအစားကို Getimensize () function ကိုဖြတ်ပြီး၎င်းသည်ပုံဖိုင်တစ်ခုဖြစ်ကြောင်းအတည်ပြုပါ။ ထို့နောက်ကျွန်ုပ်တို့သည်ဖိုင်ကိုသတ်မှတ်ထားသော directory သို့သိမ်းဆည်းရန် Move_uploaded_File () ကို အသုံးပြုသည်။
Flipimage () function သည်တင်ထားသော ပုံကို လှန်လှောကြည့်ရန်တာ 0 န်ရှိသည်။ Flip အကျိုးသက်ရောက်မှုကိုအောင်မြင်ရန် Imagerotate () function ကိုအသုံးပြုခြင်းအားဖြင့်ကျွန်ုပ်တို့သည်ပုံ 180 ဒီဂရီကိုလှည့်သည်။ အဆိုပါ flipped image မူရင်းဖိုင်ကို overwrite ပါလိမ့်မယ်။
အထက်ပါအဆင့်များမှတဆင့်ပုံရိပ်များကိုအလိုအလျှောက်တင်ခြင်းနှင့်အလိုအလျောက်လှန်ခြင်း၏လုပ်ဆောင်မှုကိုအောင်မြင်စွာအကောင်အထည်ဖော်နိုင်ခဲ့သည်။ အသုံးပြုသူသည် JPEG, PNG သို့မဟုတ် GIF format ရှိရုပ်ပုံများကိုတင်သည်ဖြစ်စေစနစ်သည်မှန်ကန်စွာဖော်ထုတ်နိုင်ပြီးလှန်နိုင်သည်။
ဤနည်းလမ်းအားဖြင့်တင်ထားသောရုပ်ပုံများသည်မှန်ကန်သောလမ်းညွှန်မှုနှင့်အညီ,