Karena array adalah tipe data yang kompleks, Anda tidak dapat melihat isinya secara langsung. Jika Anda mencoba mencetak nilai array, Anda akan melihat PHP hanya menampilkan "Array", yang berarti meneruskan nilai array melalui tautan membutuhkan banyak pekerjaan. Untungnya, PHP datang untuk menyelamatkan dengan empat fungsi yang melakukan semua kerja keras untuk Anda. serialize[], unserialize[], urlencode[], dan urldecode[]
Serialize[] mengonversi array, yang diberikan sebagai satu-satunya parameter, menjadi string normal yang dapat Anda simpan dalam file, meneruskan URL, dll. Unserialize[] adalah kebalikan dari serialize[] - dibutuhkan string serialize[]d dan mengubahnya kembali menjadi array
Urlencode[] dan urldecode[] juga bekerja bersama-sama, dan mengonversi string yang dikirimkan kepada mereka sebagai satu-satunya parameter menjadi versi yang aman untuk diteruskan ke seluruh web. Semua karakter yang bukan huruf dan angka dapat diubah menjadi kode aman web yang dapat diubah kembali menjadi teks asli menggunakan urldecode[]
Melewati array melintasi halaman paling baik dilakukan menggunakan urlencode[] dan urldecode[], namun Anda harus mempertimbangkan untuk menggunakan keduanya pada data apa pun yang Anda berikan di web, hanya untuk memastikan tidak ada karakter yang tidak kompatibel di sana
Lihatlah skrip berikut ini
Itu akan menampilkan dua baris [yang kedua saya paksa untuk membungkusnya sehingga muncul dengan benar. ]
a:4:{s:1:"a";s:3:"Foo";s:1:"b";s:3:"Bar";s:1:"c";s:3:"Baz";s:1:"d";s:3:"Wom";}
a%3A4%3A%7Bs%3A1%3A%22a%22%3Bs%3A3%3A%22Foo%22%3Bs%3A1%3A%22b%22%3Bs%3A0%3A%22%22%3Bs%3A1%3A%22c%22%3Bs%3A3%3A%22Baz%22%3Bs%3A1%3A%22d%22%3Bs%3A3%3A%22Wom%22%3B%7D
Yang pertama adalah output langsung, serialize[]d dari array kita, dan Anda dapat melihat cara kerjanya dengan melihat teks di dalamnya. Baris kedua berisi larik urlencode[]d serialize[]d , dan sangat sulit dibaca. Meskipun sulit dibaca, yang terakhir ini sepenuhnya web aman, dan jauh lebih baik untuk digunakan
Setelah array Anda dalam bentuk teks, Anda dapat melakukannya sesuka Anda. Untuk kembali ke array asli, harus berupa urldecode[]d, lalu unserialize[]d, seperti ini
Catatan Penulis. Jika Anda ingin mentransfer data biner melalui web, Anda harus menggunakan rawurlencode[] dan rawurldecode[] sebagai kebalikan dari urlencode[] dan urldecode[], karena versi mentahnya aman untuk biner
Ingin belajar PHP7?
Peretasan dengan PHP telah diperbarui sepenuhnya untuk PHP 7, dan sekarang tersedia sebagai PDF yang dapat diunduh. Dapatkan lebih dari 1200 halaman pembelajaran langsung PHP hari ini
Jika ini membantu, luangkan waktu sejenak untuk memberi tahu orang lain tentang Meretas dengan PHP dengan men-tweet tentangnya
Kami tidak dapat memindahkan, mengangkut, atau menyimpan data kompleks dalam PHP. Dalam kasus ketika kita perlu mengeksekusi satu set data yang kompleks, kita cenderung menggunakan fungsi serialize[ ] dan unserialize[ ]
Fungsi serialize memodifikasi struktur data kompleks untuk merampingkan bentuk yang kompatibel, yang dapat dengan mudah dikirim oleh PHP. Struktur yang direkonstruksi ini dapat didekonstruksi lagi menggunakan fungsi unserialize[]
Serialize[] Fungsi
Fungsi PHP ini mengubah kumpulan data kompleks menjadi representasi aliran byte yang dapat disimpan dengan mudah di PHP. Serialize[] untuk menyimpan elemen sebagai objek akan mengubah semua variabel yang tersedia menjadi objek
Tetapi metode yang digunakan di dalam objek tidak akan disimpan di dalam objek. Sebaliknya, hanya nama kelas yang akan ditampilkan. Setelah objek dideklarasikan ke struktur, kita harus melakukan unserialize[] objek yang dibuat
Contoh
Jika kita membuat karyawan kelas dan kemudian membuat cerita bersambung, PHP akan mengonversi kelas berseri menjadi string yang awalnya mengarah ke karyawan kelas. Itu akan menampung semua variabel yang terkandung di dalamnya
Tetapi untuk menghapus serial kelas karyawan yang dibuat di beberapa file lain, definisi kelas karyawan harus ada di file pertama. Ini dapat dilakukan dengan menggunakan fungsi spl_ autoload _ register [ ] yang tersedia di PHP
Sintaksis
Di bawah ini adalah sintaks dari fungsi serialize[],
Program
Mari kita menulis sebuah program menggunakan fungsi serialize[],
Keluaran
Kode di atas memberikan output berikut,
Arraya:4:{ I :0;s:11:"hello world"; I :1; I :99; I :2;a:2:{ I :0; I :2; I :1;s:4:"four";} I :3;s:4:"pink";} A:4:{ I :0;s:26:"this is an array employees"; I :1; I :24500000; I :2;a:3:{ I :0;s:3:"bmw"; I :1;s:5:" Volvo "; I :2;s:4:"audi";} I :3;s:18:"software developer";}
Dalam program ini, kami telah membuat dua objek, $myv dan $myv2, dengan elemen yang berbeda dan menggunakan fungsi serialisasi untuk mengonversi objek menjadi string
Tujuan utama dari fungsi ini adalah unserialize array pra-sterilisasi kembali ke struktur kompleks sebelumnya
- Rumah
- Beranda PHP
- Referensi fungsi PHP
- ▼ Penanganan variabel
- Menginstal dan mengkonfigurasi Penanganan Variabel PHP
- debug_zval_dump
- doubleval
- kosong
- floatval
- get_defined_vars
- get_resource_type
- gettype
- import_request_ variabel
- interval
- is_array
- is_bool
- is_callable
- is_double
- is_float
- is_int
- is_integer
- panjang
- is_null
- is_numeric
- is_object
- adalah nyata
- is_resource
- is_scalar
- is_string
- isset
- print_r
- membuat cerita bersambung
- settype
- strval
- unserialize
- tidak disetel
- var_dump
- var_export
Serialize[] mengonversi representasi nilai yang dapat disimpan Versi: kapan [PHP 4 ke atas] Sintaksis Parameter NamaDeskripsiDiperlukan / *Campuran. Campuran menunjukkan bahwa sebuah parameter dapat menerima beberapa tipe [namun tidak harus semua]. Nilai pengembalian Sebuah benang Jenis Nilai. Rangkaian Contoh Keluaran Lihat contoh di browser Berlatih di sini secara online Lihat juga Referensi Fungsi PHPKeterangan
Data bersambung berarti urutan bit sehingga dapat disimpan dalam file, buffer memori, atau ditransmisikan melalui tautan koneksi jaringanserialize[value1]
OptionalTypevalue1Nilai yang akan diserialisasiDiperlukanMixed*
_
a:3:{i:0;s:4:"Math";i:1;s:8:"Language";i:2;s:7:"Science";}
Sebelumnya. print_r
Lanjut. settype
Ikuti kami di Facebook dan Twitter untuk pembaruan terkini.
PHP. Kiat Hari Ini
PHP. Offset string ilegal Peringatan PHP
$memcachedConfig = array["host" => "127.0.0.1","port" => "11211"]; print_r[$memcachedConfig['host']];_
referensi. https. //sedikit. ly/2IUYOym
- Tren Mingguan
- Latihan Pemrograman Dasar Java
- Subkueri SQL
- Latihan Database Adventureworks
- Latihan Dasar C# Sharp
- SQL COUNT[] dengan perbedaan
- Latihan String JavaScript
- Validasi Formulir JavaScript HTML
- Latihan Pengumpulan Java
- fungsi SQL COUNT[]
- Gabung Dalam SQL
- Latihan fungsi JavaScript
- Tutorial Python
- Latihan Array Python
- Gabung Silang SQL
- Latihan C# Sharp Array