Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menukar rentetan atau data binari kepada pengekodan Base64 dalam php

Bagaimana untuk menukar rentetan atau data binari kepada pengekodan Base64 dalam php

PHPz
Lepaskan: 2023-04-12 11:44:46
asal
1764 orang telah melayarinya

Dalam pembangunan web moden, terdapat banyak cara untuk menghantar data, antaranya pengekodan Base64 telah menjadi kaedah pengekodan biasa. Dalam pengaturcaraan PHP, pengekodan rentetan atau data binari ke dalam pengekodan Base64 juga sangat mudah.

Dalam artikel ini, kami akan memperkenalkan cara menukar rentetan atau data binari kepada pengekodan Base64 dalam PHP, dan cara menyahkod pengekodan Base64. Kami juga akan membincangkan beberapa kegunaan praktikal pengekodan Base64.

1. Apakah pengekodan Base64?

Base64 ialah kaedah pengekodan 64 aksara yang digunakan untuk menukar data binari kepada format teks biasa untuk kegunaan mudah dalam penghantaran atau storan rangkaian. Jadual pengekodan Base64 termasuk huruf besar dan huruf kecil, nombor dan beberapa aksara khas, sejumlah 64 aksara. Seperti yang ditunjukkan di bawah:

ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/

Untuk menukar mana-mana data binari kepada aksara ASCII yang boleh dibaca, Base64 kemudiannya ditukarkan kepada tiga pek ASCII, oleh Base64 setiap tiga dengan mengekodkan 4 pek ini. -format pengekodan aksara, akhirnya menghasilkan rentetan yang terdiri daripada aksara ASCII yang boleh dibaca. Jika bilangan bait data bukan gandaan 3, pengekodan Base64 menambah beberapa aksara khas pada penghujungnya untuk menjadikan keseluruhan panjang pengekodan gandaan 4.

2. Bagaimana untuk menukar rentetan dan data binari ke dalam pengekodan Base64 dalam PHP?

Menukar rentetan dan data binari kepada pengekodan Base64 dalam PHP adalah sangat mudah. PHP menyediakan fungsi base64_encode(), yang boleh mengekod parameter sebenar ke dalam pengekodan Base64.

Berikut ialah contoh pengekodan rentetan ke dalam Base64:

<?php
$str = "Hello World!";
$encoded_str = base64_encode($str);
echo $encoded_str;
?>
Salin selepas log masuk

Apabila kod di atas dilaksanakan, outputnya ialah:

SGVsbG8gV29ybGQh
Salin selepas log masuk

Di Atas Hasil output ialah pengekodan Base64 bagi rentetan "Hello World!"

Untuk mengekod data binari ke dalam pengekodan Base64, hanya masukkan data binari sebagai parameter fungsi base64_encode().

Berikut ialah contoh pengekodan data binari ke dalam pengekodan Base64:

<?php
$data = file_get_contents("image.jpg");
$encoded_data = base64_encode($data);
echo $encoded_data;
?>
Salin selepas log masuk

Apabila kod di atas dilaksanakan, hasil output ialah data binari yang dikodkan dalam fail image.jpg. Pengekodan Base64. Dalam contoh di atas, untuk membaca data dalam fail ke dalam rentetan, kami menggunakan fungsi file_get_contents() dalam PHP.

3. Bagaimana untuk menyahkod pengekodan Base64 dalam PHP?

Menyahkod pengekodan Base64 kepada data mentah dalam PHP juga sangat mudah. PHP menyediakan fungsi base64_decode(), yang boleh menyahkod rentetan berkod Base64 ke dalam data mentah.

Berikut ialah contoh penyahkodan rentetan yang dikodkan Base64 kepada rentetan:

<?php
$encoded_str = "SGVsbG8gV29ybGQh";
$str = base64_decode($encoded_str);
echo $str;
?>
Salin selepas log masuk

Apabila kod di atas dilaksanakan, hasil output ialah rentetan "Hello World!", yang Rentetan ialah data asal yang dikodkan Base64 yang disebutkan di atas.

Untuk menyahkod pengekodan Base64 ke dalam data binari, kaedahnya adalah serupa dengan contoh di atas.

4. Beberapa kegunaan pengekodan Base64

Dalam pembangunan web, pengekodan Base64 mempunyai banyak aplikasi di sini kami memperkenalkan secara ringkas dua aplikasi biasa.

  1. Paparan gambar atau data binari lain dalam halaman Web

Dalam pembangunan Web, gambar atau data binari lain perlu dipaparkan kepada pengguna melalui halaman web. Jika data binari digunakan secara langsung, banyak masalah yang tidak dapat diramalkan akan berlaku Contohnya, data binari mungkin dipotong semasa penghantaran atau tidak boleh dihuraikan dengan betul. Pengekodan Base64 boleh menukar data binari ke dalam format teks untuk paparan mudah di Web.

Berikut ialah contoh menukar imej kepada pengekodan Base64.

<?php
$data = file_get_contents("image.jpg");
$encoded_data = base64_encode($data);
echo "<img src=&#39;data:image/jpeg;base64," . $encoded_data . "&#39;/>";
?>
Salin selepas log masuk

Apabila kod di atas dilaksanakan, output akan memaparkan teg img yang mengandungi data imej image.jpg.

  1. Aplikasi dalam penghantaran API

Dalam aplikasi moden, antara muka API digunakan untuk penghantaran data antara platform yang berbeza. Dalam penghantaran API, saiz dan jenis data perlu mengambil kira keselamatan dan kecekapan penghantaran data. Pengekodan Base64 boleh menukar data binari ke dalam format teks untuk kegunaan mudah dalam penghantaran API.

Ringkasan

Dalam pembangunan PHP, menukar rentetan dan data binari kepada pengekodan Base64 adalah sangat mudah. PHP menyediakan fungsi base64_encode() dan base64_decode() untuk melaksanakan operasi ini. Pengekodan Base64 mempunyai banyak aplikasi dalam pembangunan web, seperti memaparkan imej atau data binari lain dalam halaman web, dan dalam penghantaran API untuk menghantar data dengan selamat.

Atas ialah kandungan terperinci Bagaimana untuk menukar rentetan atau data binari kepada pengekodan Base64 dalam php. 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