为了账号安全,请及时绑定邮箱和手机立即绑定

== O:3:"Car":1:{s:4:"name";s:7:"new car";} object(Car)#3 (1) { ["name"]=> string(7) "new car" }请问为什么是这样的输出结果 啊,我看不懂

<?php

class Car {

    public $name = 'car';

    

    public function __clone() {

        $obj = new Car();

        $obj->name = $this->name;

    }

}

$a = new Car();

$a->name = 'new car';

$b = clone $a;

if ($a == $b)  echo '=='.'<br>';   //true

if ($a === $b) echo '==='.'<br>'; //false


$str = serialize($a); //对象序列化成字符串

echo $str.'<br>';

$c = unserialize($str); //反序列化为对象

var_dump($c);


正在回答

2 回答

这是序列化的 结果 : O 表示的是对象 s表示字符串 4是字符串的长度 name 就是字符串 后面的s也是字符串 7 是 字符串的值  new Car 也就是  说 name 的值 是 new Car 

0 回复 有任何疑惑可以回复我~
#1

qq_伊藤_03776080 提问者

非常感谢!
2017-05-03 回复 有任何疑惑可以回复我~
#2

qq_伊藤_03776080 提问者

哦哦谢谢!但是我是想知道 ,这些结果都是程序中那些句子输出的?
2017-05-03 回复 有任何疑惑可以回复我~
#3

潇洒走一会啊 回复 qq_伊藤_03776080 提问者

这个问题很简单,所有代码只有两个输出语句 一个是echo $str.'<br>'; 另一个是r_dump($c);你自己可以删除一个看看结果少了哪个
2017-05-23 回复 有任何疑惑可以回复我~

请问“Car”后面的1是什么意思,以及#号代表什么

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

== O:3:"Car":1:{s:4:"name";s:7:"new car";} object(Car)#3 (1) { ["name"]=> string(7) "new car" }请问为什么是这样的输出结果 啊,我看不懂

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信