mirror of
https://github.com/php/php-src.git
synced 2024-10-21 00:12:34 +00:00
95 lines
2.3 KiB
PHP
95 lines
2.3 KiB
PHP
--TEST--
|
||
Test serialize() & unserialize() functions: objects
|
||
--FILE--
|
||
<?php
|
||
/* Prototype : proto string serialize(mixed variable)
|
||
* Description: Returns a string representation of variable (which can later be unserialized)
|
||
* Source code: ext/standard/var.c
|
||
* Alias to functions:
|
||
*/
|
||
/* Prototype : proto mixed unserialize(string variable_representation)
|
||
* Description: Takes a string representation of variable and recreates it
|
||
* Source code: ext/standard/var.c
|
||
* Alias to functions:
|
||
*/
|
||
|
||
echo "\n--- Testing objects ---\n";
|
||
|
||
class members
|
||
{
|
||
private $var_private = 10;
|
||
protected $var_protected = "string";
|
||
public $var_public = array(-100.123, "string", TRUE);
|
||
}
|
||
|
||
$members_obj = new members();
|
||
var_dump( $members_obj );
|
||
$serialize_data = serialize( $members_obj );
|
||
var_dump( $serialize_data );
|
||
$members_obj = unserialize( $serialize_data );
|
||
var_dump( $members_obj );
|
||
|
||
echo "\n--- testing reference to an obj ---\n";
|
||
$ref_members_obj = &$members_obj;
|
||
$serialize_data = serialize( $ref_members_obj );
|
||
var_dump( $serialize_data );
|
||
$ref_members_obj = unserialize( $serialize_data );
|
||
var_dump( $ref_members_obj );
|
||
|
||
echo "\nDone";
|
||
?>
|
||
--EXPECTF--
|
||
|
||
--- Testing objects ---
|
||
object(members)#%d (3) {
|
||
["var_private":"members":private]=>
|
||
int(10)
|
||
["var_protected":protected]=>
|
||
string(6) "string"
|
||
["var_public"]=>
|
||
array(3) {
|
||
[0]=>
|
||
float(-100.123)
|
||
[1]=>
|
||
string(6) "string"
|
||
[2]=>
|
||
bool(true)
|
||
}
|
||
}
|
||
string(195) "O:7:"members":3:{s:20:" |