Bagaimana untuk Menyimpan Tatasusunan PHP dalam Kuki: JSON, Serialize, atau Array Splitting?

Susan Sarandon
Lepaskan: 2024-10-31 15:01:01
asal
904 orang telah melayarinya

How to Store PHP Arrays in Cookies: JSON, Serialize, or Array Splitting?

Menyimpan Tatasusunan PHP dalam Kuki

PHP menyediakan pelbagai kaedah untuk menyimpan tatasusunan dalam kuki. Berikut ialah gambaran keseluruhan teknik yang paling biasa digunakan:

JSON Stringification:

JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang menyediakan cara yang mudah untuk menyimpan tatasusunan dalam kuki.

Kod Menyimpan:

<code class="php">setcookie('your_cookie_name', json_encode($info), time() + 3600);</code>
Salin selepas log masuk

Kod Bacaan:

<code class="php">$data = json_decode($_COOKIE['your_cookie_name'], true);</code>
Salin selepas log masuk

Amaran: Jangan Gunakan serialize/unserialize

PHP menyediakan fungsi serialize() dan unserialize() untuk menukar tatasusunan kepada rentetan dan belakang. Walau bagaimanapun, fungsi ini sangat tidak selamat dan tidak boleh digunakan untuk menyimpan data yang tidak dipercayai dalam kuki, kerana ia boleh dieksploitasi untuk melaksanakan kod sewenang-wenangnya.

Penyelesaian Alternatif: Array Splitting

Sebagai alternatif kepada rentetan JSON, anda boleh menyimpan elemen tatasusunan secara berasingan sebagai kuki, setiap satu dengan kuncinya sendiri.

Kod Menyimpan:

<code class="php">setcookie('my_array[0]', 'value1', time() + 3600);
setcookie('my_array[1]', 'value2', time() + 3600);
setcookie('my_array[2]', 'value3', time() + 3600);</code>
Salin selepas log masuk

Kod Membaca:

<code class="php">$data = $_COOKIE['my_array'];</code>
Salin selepas log masuk

Pendekatan ini amat berguna jika anda perlu mengakses elemen tatasusunan individu secara terus sebagai kuki. Ia juga selamat kerana ia tidak melibatkan sebarang penukaran rentetan.

Atas ialah kandungan terperinci Bagaimana untuk Menyimpan Tatasusunan PHP dalam Kuki: JSON, Serialize, atau Array Splitting?. 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
Artikel terbaru oleh pengarang
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!