Dalam PHP, kadangkala anda perlu menukar objek atau tatasusunan kepada rentetan untuk penyimpanan atau penghantaran. Proses ini dipanggil serialisasi, yang menukar struktur data ke dalam urutan rentetan supaya data boleh dihantar dan disimpan dalam persekitaran yang berbeza. PHP menyediakan fungsi terbina dalam serialize() yang boleh melaksanakan serialization dengan cepat dan mudah.
1. Pensirian tatasusunan
Untuk tatasusunan, anda boleh menggunakan siri() untuk mensirikannya ke dalam rentetan. Berikut adalah contoh.
$arr = ['apple', 'banana', 'orange']; $str = serialize($arr); echo $str;
Hasil keluaran ialah: a:3:{i:0;s:5:"epal";i:1;s:6:"pisang";i:2;s:6:"oren";}
Seperti yang anda lihat, hasil siri ialah rentetan yang mengandungi maklumat tatasusunan. Tatasusunan bersiri boleh dinyahsiri dan dipulihkan kepada bentuk tatasusunan asalnya melalui fungsi unserialize().
$arr_unserialize = unserialize($str); print_r($arr_unserialize);
Outputnya ialah:
Array ( [0] => apple [1] => banana [2] => orange )
Proses bersiri ini sangat berguna untuk situasi di mana anda perlu menyimpan tatasusunan ke dalam pangkalan data atau fail.
2. Pensirian objek
Dalam PHP, objek disiri dengan cara yang serupa dengan tatasusunan. Berikut adalah contoh.
class Book { public $title; public $author; function __construct($title, $author) { $this->title = $title; $this->author = $author; } } $book = new Book('PHP', 'Bob'); $str = serialize($book); echo $str;
Hasil output ialah: O:4:"Book":2:{s:5:"title";s:3:"PHP";s:6:"author";s:3:"Bob" ; }
Seperti yang anda lihat, hasil siri ialah rentetan yang mengandungi maklumat objek. Objek bersiri juga boleh dinyahsiri dan dipulihkan kepada objek asal melalui fungsi unserialize().
$book_unserialize = unserialize($str); var_dump($book_unserialize);
Hasil keluarannya ialah:
object(Book)#1 (2) { ["title"]=> string(3) "PHP" ["author"]=> string(3) "Bob" }
Anda boleh melihat bahawa penyahserikatan menghasilkan objek baharu dengan semua sifat dan kaedah objek asal.
3. Langkah berjaga-jaga
Apabila menggunakan fungsi bersiri() PHP, anda perlu memberi perhatian kepada perkara berikut.
IV. Kesimpulan
Menggunakan fungsi bersiri() PHP boleh menyerikan objek dan tatasusunan dengan mudah, menukar data ke dalam bentuk rentetan dan memudahkan penyimpanan dan penghantaran. Apabila menggunakan fungsi ini, anda perlu memberi perhatian kepada had dan isu keselamatan rentetan bersiri. Dalam aplikasi praktikal, adalah perlu untuk memilih penyelesaian bersiri yang sesuai berdasarkan keadaan tertentu untuk memastikan keselamatan dan kecekapan data.
Atas ialah kandungan terperinci Gunakan fungsi PHP serialize() untuk menyerikan objek dan tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!