Dengan perkembangan Internet yang berterusan, penggunaan fail imej dalam laman web menjadi semakin biasa. Apabila membangunkan tapak web, anda selalunya perlu membenarkan pengguna memuat naik fail imej dan kemudian memprosesnya. Ini memerlukan pembangun membiasakan diri dengan cara menggunakan PHP untuk memproses dan memuat naik fail imej.
1. Muat naik fail imej
Dalam PHP, kami boleh menggunakan $_FILES untuk mendapatkan fail yang dimuat naik Memproses fail imej yang dimuat naik memerlukan langkah berikut:
Pertama, kita perlu menentukan direktori untuk memuat naik fail. Kita boleh mendapatkan laluan sementara fail yang dimuat naik dengan menetapkan "fail" $_FILES.
Seterusnya, kita perlu menetapkan jenis fail yang dimuat naik. Biasanya, kami hanya membenarkan memuat naik fail imej dalam format jpg dan png, yang boleh ditetapkan menggunakan kod berikut:
$allowed = array('jpg', 'png');
if(! in_array (strtolower(pathinfo($_FILES["fail"]["nama"], PATHINFO_EXTENSION)), $allowed)){
echo "Hanya fail imej dalam format jpg dan png dibenarkan untuk dimuat naik";
exit( );
}
Terdapat dua situasi utama untuk memproses fail yang dimuat naik: mengalihkan fail yang dimuat naik ke direktori yang ditentukan; menyesuaikan diri. Kedua-dua situasi ini diperkenalkan di bawah.
Kes 1: Alihkan fail yang dimuat naik ke direktori yang ditentukan. Berikut ialah kod contoh:
$target_dir = "uploads/";
$target_file = $target_dir . fail "]["tmp_name"], $target_file)) {
echo "Fail berjaya dimuat naik";
} lagi {
echo "Fail dimuat naik gagal";
}
$dst_image = imagescale($src_image, 300); Saiz imej
imagepng($dst_image, 'new_image.png'); // Imej sasaran output
$dst_image = imagecrop($src_image, ['x' => 100, 'y' => 100, 'width' => 200 , 'height' => ; 200]); // Tetapkan imej sasaran
imagepng($dst_image, 'cropped_image.png'); // Keluarkan imej sasaran
$watermark = imagecreatefrompng('watermark.png'); // Tetapkan tera air
imagecopymerge($src_image, $watermark, 10, 10, 0 , 0, imagesx($watermark), imagesy($watermark), 30); // Tambahkan tera air pada imej asal
imagettftext($src_image, 30, 0, 200, 200, imagecolorallocate($ src_image, 255, 255 , 255), 'font.ttf', 'My watermark'); // Tambah tanda air teks
imagepng($src_image, 'watermarked_image.png'); // Output watermarked image
imagefilter($src_image, IMG_FILTER_GRAYSCALE); // Tukar imej kepada skala kelabu
imagepng($src_image, 'grayscale_image.png'); // Output Grey Degree Image
Atas ialah kandungan terperinci Memproses dan memuat naik fail imej menggunakan PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!