(PHP 4, PHP 5)
serialize — Bir değerin saklanabilir bir gösterimini üretir
Bir değerin saklanabilir bir gösterimini üretir.
PHP değerlerini, yapısını ve türünü kaybetmeden saklamak veya aktarmak için kullanışlıdır.
Böyle bir değerden tekrar özgün değeri elde etmek için unserialize() işlevini kullanın.
değer
Dizgeleştirilecek değer. serialize() işlevi, resource türü hariç her türü dizgeleştirebilir. Hatta kendine gönderimli dizileri bile dizgeleştirebilirsiniz. Dizgeleştirdiğiniz dizi veya nesnelerin içindeki döngüsel gönderimler bile saklanabilir. Bunlar dışında kalan gönderimler kaybedilir.
PHP nesneleri dizgeleştirirken önce __sleep üye işlevi çağrılmaya çalışılır. Bu işlem, nesneye dizgeleştirme öncesinde bir takım temizlikler yapabilmesi imkanını tanır. Benzer şekilde, unserialize() kullanılarak nesne özgün durumuna getirilirken __wakeup üye işlevi çağrılmaya çalışılır.
Bilginize:
Nesnenin özel üyelerinin isimlerinin önünde sınıf ismi, protected üyelerin isimlerinin önünde ise bir '*' bulunur. İsimlerin başına getirilen bu değerler her iki tarafta null baytlarla ifade edilirler.
Belirtilen değerin herhangi bir yerde saklanabilecek, akımlar üzerinden aktarılabilen bir gösterimini döndürür.
Örnek 1 - serialize() örneği
<?php
// $session_data, geçerli kullanıcı için oturum bilgisini
// içeren çok boyutlu bir dizi içerir. İsteğin sonunda bu diziyi bir
// veritabanında saklamak için serialize() işlevini kullanacağız.
$conn = odbc_connect("webdb", "php", "chicken");
$stmt = odbc_prepare($conn,
"UPDATE sessions SET data = ? WHERE id = ?");
$sqldata = array (serialize($session_data), $_SERVER['PHP_AUTH_USER']);
if (!odbc_execute($stmt, $sqldata)) {
$stmt = odbc_prepare($conn,
"INSERT INTO sessions (id, data) VALUES(?, ?)");
if (!odbc_execute($stmt, $sqldata)) {
/* Birşeyler yanlış gitmiş.. */
}
}
?>
Sürüm: | Açıklama |
---|---|
4.0.7 | Nesne dizgeleştirme işlemi tamamen gerçeklendi. |
Bilginize:
PHP'nin yerleşik nesnelerini dizgeleştirmek mümkün değildir.