Bagaimana saya bisa mengakses data serial di php?

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

Fungsi array serialisasi PHP digunakan untuk membuat serialisasi array yang diberikan dan mengonversi representasi nilai yang dapat disimpan. Fungsi array serial adalah fungsi bawaan di PHP. Serialisasi data berarti mengubah nilai menjadi urutan bit untuk disimpan dalam buffer memori, dalam file, atau ditransfer melalui jaringan. Array adalah tipe data yang kompleks; . Fungsi serialize() mengubah array menjadi string sederhana yang dapat kita simpan dalam file dan mentransfernya ke seluruh jaringan dalam URL, dll.

Sintaks dari fungsi larik bersambung –

serialkan(array);

Parameter –

Mulai Kursus Pengembangan Perangkat Lunak Gratis Anda

Pengembangan web, bahasa pemrograman, pengujian Perangkat Lunak & lainnya

  • array – Ini bukan parameter opsional yang menentukan array atau nilai untuk diserialisasi atau diubah menjadi representasi yang dapat disimpan
  • Nilai kembalian – Nilai kembalian dari metode ini adalah string, yang merupakan representasi aliran byte dari larik yang dapat disimpan atau dikirim

Bekerja dari fungsi array serialisasi PHP

Fungsi array PHP serialize() menerima satu parameter sebagai ( array/value ), yang merupakan parameter yang diperlukan. Misalkan kita memiliki array (1, 2, 3, 4) yang ingin kita simpan dalam file, jadi pertama-tama kita perlu membuat serial dengan memanggil fungsi sebagai serialize(array), yang membuat serial array dan mengembalikan konversi string dari . 4. {Saya. 0; saya. 1; saya. 1; saya. 2; saya. 2; saya. 3; saya. 3; saya. 4;}”, lebih jauh yang dapat kita simpan dalam file atau dikirim melalui jaringan

Contoh untuk fungsi larik PHP serialize()

Berikut adalah contoh-contoh berikut yang disebutkan di bawah ini

Paket Pengembangan Perangkat Lunak Semua dalam Satu(600+ Kursus, 50+ proyek)

Bagaimana saya bisa mengakses data serial di php?
Bagaimana saya bisa mengakses data serial di php?
Bagaimana saya bisa mengakses data serial di php?
Bagaimana saya bisa mengakses data serial di php?

Bagaimana saya bisa mengakses data serial di php?
Bagaimana saya bisa mengakses data serial di php?
Bagaimana saya bisa mengakses data serial di php?
Bagaimana saya bisa mengakses data serial di php?

Harga
Lihat Kursus

600+ Kursus Daring. 50+ proyek. 3000+ Jam. Sertifikat yang Dapat Diverifikasi. Akses Seumur Hidup
4. 6 (86.697 peringkat)

Contoh 1

Contoh untuk fungsi larik serialize() untuk membuat larik kompleks –

Selanjutnya kita tulis kode PHP untuk memahami fungsi array serialize() dengan lebih jelas dengan contoh berikut, dimana fungsi serialize() digunakan untuk membuat serialisasi array yang diberikan, seperti di bawah ini –

Kode

<?php
// create complex array
$array = array( 'text', 200, 400, 'apple', array( 2, 'two', 3, 'three' ) );
// printing complex array
print("The complex array is : ");
print_r( $array );
print( "<br>");
// serialize the complex array
$array_string = serialize( $array );
// printing the serialize array
print( "The serialize array is : " );
print( $array_string );
print( "<br>");
// unserializing the serialized array
$unser_array = unserialize( $array_string );
// printing the unserialized array
print_r( $unser_array );
?>

Keluaran

Bagaimana saya bisa mengakses data serial di php?

Seperti pada kode di atas, array kompleks dibuat dan diserialkan menggunakan fungsi serialize(), yang mengembalikan aliran byte atau konversi string dari array. Selanjutnya, larik bersambung diubah kembali menjadi larik dengan menggunakan fungsi unserialize(), yang sama dengan larik asli, seperti yang dapat kita lihat pada keluaran di atas

Contoh #2

Contoh untuk fungsi larik serialize() untuk membuat larik larik dan menyimpannya ke dalam file –

Selanjutnya kita tuliskan kode PHP untuk lebih jelas memahami fungsi array serialize() dengan contoh berikut, dimana fungsi serialize() digunakan untuk membuat serialisasi array yang diberikan dan menyimpannya secara permanen ke dalam file teks, seperti di bawah ini –

Kode

<?php
// create an array
$array = array( 'apple', 'banana', 'mango', 'orange', 'cherry' );
// printing complex array
print("The array is : ");
print_r( $array );
print( "<br>");
// serialize the complex array
$array_string = serialize( $array );
// printing the serialize array
print( "The serialize array is : " );
print( $array_string );
print( "<br>");
// save the array string to a Ex text file
file_put_contents('Ex.txt', $array_string);
// access back the data from the save text file.
$file_array = file_get_contents('Ex.txt');
// printing the file array
print( "The serialize file array is : " );
print( $file_array );
print( "<br>");
// unserializing the serialized array
$unser_array = unserialize( $file_array );
// printing the unserialized array
print( "The unserialize file array is : " );
print_r( $unser_array );
print( "<br>");
?>

Keluaran

Bagaimana saya bisa mengakses data serial di php?

Jika kita memeriksa Ex. txt, isinya adalah –

Bagaimana saya bisa mengakses data serial di php?

Seperti pada kode di atas, array kompleks dibuat dan diserialkan; . Selanjutnya, larik serial yang disimpan dibaca kembali dan diubah menjadi larik dengan menggunakan fungsi unserialize(), yang sama dengan larik asli, seperti yang dapat kita lihat pada keluaran di atas

Contoh #3

Contoh untuk fungsi array serialize() untuk membuat serial array dan menyandikan –

Selanjutnya, kita menulis kode PHP untuk memahami fungsi array serialize(), di mana fungsi serialize() digunakan untuk membuat serial array yang diberikan dan menyandikannya ke dalam URL untuk dikirim ke beberapa halaman, seperti di bawah ini –

Kode

<?php
// create an array
$array = array (
1 => "one",
2 => "two",
3 => "three"
);
// printing an array
print("The array is : ");
print_r( $array );
print( "<br>");
// serialize the complex array
$array_string = serialize( $array );
// printing the serialize array
print( "The serialize array is : " );
print( $array_string );
print( "<br>");
// encode the array string
$enc_array = urlencode( $array_string );
print( "The encode serialize array is : " );
print( $enc_array );
print( "<br>");
// deencode the encoded array string
$dec_array = urldecode( $enc_array );
// printing the file array
print( "The deencode serialized array is : " );
print( $dec_array );
print( "<br>");
?>
_

Keluaran

Bagaimana saya bisa mengakses data serial di php?

Seperti pada kode di atas, array kompleks dibuat dan diserialkan; . Selanjutnya, larik serial yang disandikan didekodekan ke larik dengan menggunakan fungsi urldecode() , yang sama dengan larik asli, seperti yang dapat kita lihat pada keluaran di atas

Kesimpulan

File Zip PHP digunakan untuk menyimpan banyak file atau dan direktori bersama-sama dalam bentuk terkompresi, yang nantinya juga dapat di-unzip

Artikel yang Direkomendasikan

Ini adalah panduan untuk serialisasi array PHP. Di sini kita membahas Cara Kerja PHP serialisasi fungsi array dan Contoh beserta kode dan keluarannya. Anda juga dapat melihat artikel berikut untuk mempelajari lebih lanjut –

Bagaimana cara mengubah data serial ke array PHP?

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

Bagaimana cara memperbarui data serial di PHP?

foreach(unserialize($serializedData) as $key => $val) { if($key == 'key') { $serializedData[$key] = 'newValue';

Bagaimana cara unserialize data dari database di PHP?

Apa gunanya serialize () dan unserialize () di PHP?

serialize() mengembalikan string yang berisi representasi byte-stream dari nilai apa pun yang dapat disimpan di PHP. unserialize() dapat menggunakan string ini untuk membuat ulang nilai variabel asli . Menggunakan serialisasi untuk menyimpan objek akan menyimpan semua variabel dalam suatu objek.