Tukar imej php kepada tatasusunan bait

PHPz
Lepaskan: 2023-05-06 11:33:07
asal
922 orang telah melayarinya

Apabila membangun menggunakan PHP, selalunya perlu menukar fail imej kepada tatasusunan bait untuk penghantaran atau penyimpanan rangkaian yang mudah dalam pangkalan data. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menukar imej kepada tatasusunan bait.

1. Gunakan fungsi file_get_contents() untuk membaca fail imej

Dalam PHP, gunakan fungsi file_get_contents() untuk membaca kandungan fail dengan mudah di bawah laluan yang ditentukan, termasuk jenis fail binari, seperti sebagai Gambar, audio, video, dsb. Kod sampel adalah seperti berikut:

$file = 'path/to/image.jpg';  // 图片文件路径
$data = file_get_contents($file);  // 读取图片内容
Salin selepas log masuk

Di sini, $file ialah laluan fail imej yang ditentukan dan $data ialah kandungan binari bagi imej yang dibaca. Menggunakan kaedah ini untuk membaca fail, anda boleh mengeluarkan pembolehubah $imej terus ke penyemak imbas, membenarkan penyemak imbas mengenal pasti jenis imej secara automatik dan memaparkannya, seperti yang ditunjukkan di bawah:

header('Content-Type:image/jpeg');  // 告诉浏览器返回的是JPEG格式的图片
echo $data;  // 输出图片数据
Salin selepas log masuk

2. Tukar data imej kepada perkataan Tatasusunan Bahagian

Selepas langkah sebelumnya, kami telah berjaya membaca kandungan binari imej Seterusnya, kami perlu menukarnya kepada tatasusunan bait untuk kegunaan dan penghantaran yang mudah. Di sini, kita boleh menggunakan fungsi pack() untuk mengemas() data imej ke dalam rentetan binari, dan kemudian menggunakan fungsi str_split() untuk memisahkan rentetan binari kepada bait untuk mendapatkan tatasusunan bait. Kod sampel adalah seperti berikut:

$bytes = str_split(pack('H*', bin2hex($data)));
Salin selepas log masuk

Di sini, fungsi bin2hex() menukar rentetan binari kepada bentuk nombor perenambelasan, kemudian fungsi pack() mengemas data ke dalam bentuk rentetan binari, dan akhirnya str_split () fungsi menukar rentetan binari kepada nombor perenambelasan Pisahkan rentetan ke dalam setiap bait untuk mendapatkan tatasusunan bait.

3. Gunakan pengekodan base64 untuk menukar tatasusunan bait kepada teks

Menggunakan tatasusunan bait boleh menyimpan data imej dalam pangkalan data atau menghantarnya melalui rangkaian, tetapi biasanya kita juga perlu Menukar kepada teks borang untuk memudahkan penggunaan dan paparan dalam senario tertentu, seperti memaparkan imej dalam halaman HTML. Di sini, kita boleh menggunakan pengekodan base64 untuk menukar tatasusunan bait ke dalam bentuk teks. Kod sampel adalah seperti berikut:

$base64 = base64_encode($data);
Salin selepas log masuk

Di sini, $data ialah kandungan binari imej yang dibaca sebelum ini Gunakan fungsi base64_encode() untuk menukar data binari kepada teks yang dikodkan base64.

4. Ringkasan

Artikel ini memperkenalkan cara menggunakan PHP untuk menukar fail imej kepada tatasusunan bait Langkah-langkah umum ialah: mula-mula gunakan fungsi file_get_contents() untuk membaca data binari imej, dan kemudian gunakan Fungsi pack() mengemas data ke dalam bentuk rentetan binari, dan akhirnya menggunakan fungsi str_split() untuk memisahkan rentetan binari ke dalam setiap bait untuk mendapatkan tatasusunan bait. Jika anda perlu menukar tatasusunan bait ke dalam bentuk teks, anda boleh menggunakan pengekodan base64. Operasi ini digunakan secara meluas dalam penghantaran rangkaian dan penyimpanan pangkalan data.

Atas ialah kandungan terperinci Tukar imej php kepada tatasusunan bait. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!