首页 > 代码库 > php魔术方法__sleep() 和 __wakeup()
php魔术方法__sleep() 和 __wakeup()
魔术方法的使用
<?php class Connection { protected $link; private $server, $username, $password, $db; public function __construct($server, $username, $password, $db) { $this->server = $server; $this->username = $username; $this->password = $password; $this->db = $db; $this->connect(); } private function connect() { $this->link = mysql_connect($this->server, $this->username, $this->password); mysql_select_db($this->db, $this->link); } public function __sleep() { echo __METHOD__; return array(‘server‘, ‘username‘, ‘password‘, ‘db‘); //序列化时保存这些属性 } public function __wakeup() { $this->connect(); //反序列化后自动连接数据库 echo __METHOD__; } } $conn = Connection(‘mysql://localhost:3306/‘,‘root‘,‘root123‘,‘db_php‘); unserilize(serialize($conn)); ?>
输出
__sleep__wakeup
php魔术方法__sleep() 和 __wakeup()
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。