用户名: 密码: 免费注册 忘记密码? 网站地图 | 加入收藏 | 设为首页
首页 | 新闻 | 工具 | 系统 | 办公 | 聊天 | 多媒体 | 网页 | 运营 | 平面 | 欣赏 | 数据库 | 程序 | 服务器 | 组网
网页 | 3dmax | Ghost | Windows Xp| Dreamweaver | photoshop | Flash | office | Alexa | Css | QQ | Asp | PHP | Jsp | Access
Flash MX 2004入门 | 网站推广策略 | CorelDRAW入门 | ASP学习 | 网站建设大师功 | Word入门
  iTbulo.com > 学院 > 网站运营教程 > 网站相关知识 > 正文
PHP开发大型项目的方法[OOP思想]
iTbulo.COM 2007-5-25 佚名()

 

进入危险区域
  当你序列化一个对象,你会得到某种格式的字符串,如果你感兴趣,你可以调究它,其中,字符串中有类的名字(太好了!),你可以把它取出来,象:

代码:

<?php
$herring=serialize($obj);
$vec=explode(´:´,$herring);
$nam=str_replace("\"",´´,$vec[2]);
?>

  所以假设你创建了一个"Universe"的类,并且强制所有的类都必须从universe扩展,你可以在universe中定义一个clone的方法,如下:

代码:

<?php
class Universe {
function clone() {
$herring=serialize($this);
$vec=explode(´:´,$herring);
$nam=str_replace("\"",´´,$vec[2]);
$ret=new $nam;
return $ret;
}
}
//然后
$obj=new Something();
//从Universe扩展
$other=$obj->clone();
?>

  你所得到的是一个新的Something类的对象,它同使用new方法,调用构造函数创建出的对象一样。我不知道这个对你是否有用,但是Universe类可以知道派生类的名字是一个好的经验。想象是唯一的限制。

上一页  [1] [2] [3] [4] 

文章搜索
相关资讯
相关文章 相关下载
利用PHP和CSS改变网页文字大小
安全基础:PHP后门的隐藏技巧测试报告
PHP 5.0中多态性的实现方案浅析
大型系统上PHP令人不爽的九大原因
传奇的诞生 PHP三位创始人简介
焦点信息