当前位置: 首页 > 图文教程 > 网络编程 > PHP > PHP中类的理解和应用[一]

PHP
php面向对象全攻略 (十五) 多态的应用
php面向对象全攻略 (十六) 对象的串行化
php面向对象全攻略 (十七) 自动加载类
PHP parse_url 一个好用的函数
PHP 字符串分割和比较
全世界最小的php网页木马一枚 附PHP木马的防范方法
PHP 日期加减的类,很不错
PHP 日期时间函数的高级应用技巧
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
Ha0k 0.3 PHP 网页木马修改版
PHP iconv 函数转gb2312的bug解决方法
关于页面优化和伪静态
使用zend studio for eclipse不能激活代码提示功能的解决办法
PHP 身份验证方面的函数
基于OpenCV的PHP图像人脸识别技术
用mysql触发器自动更新memcache的实现代码
php 数学运算验证码实现代码
PHP网站开发方案实例
PHP教程:挖掘细节提升网站性能
搜索引擎技术核心揭密(PHP)

PHP中类的理解和应用[一]


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 54 ::
收藏到网摘: n/a

       PHP中类的理解和应用[一]
  
    许多PHP的爱好者在学习过程中感到对PHP中类的概念较难理解和掌握,虽然知道类既然存在就有其存在的道理,但是由于平时接触和使用的机会较少,也就一略而过。其实,只要我们理解变量和函数这些PHP基本概念的话,掌握类的含义就不成问题。鉴于类在PHP的重要作用,本文将结合具体事例介绍PHP中类的概念和应用。
  
  
  (一)
  
    所谓类就是指由变量和作用于变量的函数组成的集合。类提供了一种对现实世界中事物的描述方式。通过有效的使用类,我们可以将描述同一对象的多个变量和函数组合在一起,作为一个整体使用,从而使编写出来的程序更直观,更合理,更易于维护。
  
    举一个比较通俗的例子,我们可以创建一个名为Bike的类来描述现实生活中的一辆自行车。首先,我们设定该类中的变量包括踏板$pedals,链条$chain,前轮$front wheel,后轮$rear wheel,刹车$brakes, 以及手柄$handle。然后,我们创建停车Stop(), 加速Accelerate(), 左转TurnLeft()和右转TurnRight()等函数。这样,我们就有了一个可以描述自行车这一对象所有行为和属性的类。例如,我们可以将$front wheel 和$rear wheel变量传入TurnLeft()函数,从而得到某种输出结果。
  
    也许有人会问上述例子虽然有趣,但是我们完全可以使用常规的变量和函数实现同样功能,为什么一定要坚持使用这么烦琐的类呢?当然,如果我们在脚本中只需要描述一辆自行车话,定义一个类似乎没有什么特殊的价值。但是,如果当脚本需要涉及多辆自行车时呢?如果我们还是采用常规的为每量自行车都定义变量和函数的方法,那么光是跟踪每个变量,确保正确的变量输入正确的函数就是一项相当复杂的工作。相反,如果采用类的方式,就可以有效的减少所需变量的数量。此外,一个已经定义的类还可以被包含在其它文件或脚本中,从而实现代码的重复利用。
  
  
  (二)
  
    对PHP类的概念有所了解之后,我们就来具体看一下如何在脚本中创建和使用类。
  
    相信大家在创建站点时一定会因为要顾及页面的显示效果,字体的样式和大小等细节而影响对整个页面布局和整个站点流程的设计和构思。下面,我们就利用PHP的类来控制HTML的页面输出。
  
    首先,我们使用如下代码创建一个名为Style的类,并在类中定义设置页面属性所需的变量:
  
  <?php
  
  class Style {
  
  var $text;
  
  var $alink;
  
  var $vlink;
  
  var $link;
  
  var $bgcol;
  
  var $face;
  
  var $size;
  
  var $align;
  
  var $valign;
  
  }
  
  ?>
  
    相信熟悉HTML语言的读者一定不会对我们在Style类中声名的变量感到陌生。
  
    下面,我们在Style类中创建一个与类同名的函数。代码如下:
  
  <?php
  
  class Style {
  
  function Style ($text="#000000",$alink="#AA00AA",$vlink="#AA00AA",
  
  $link="#3333FF",$bgcol="#999999",$face="Arial",$size=3,
  
  $align="CENTER",$valign= "TOP")
  
  {
  
  $this->text=$text;
  
  $this->alink=$alink;
  
  $this->vlink=$vlink;
  
  $this->link=$link;
  
  $this->bgcol=$bgcol;
  
  $this->face=$face;
  
  $this->size=$size;
  
  $this->align=$align;
  
  $this->valign=$valign;
  
  }
  
  }
  
  ?>
  
  说明:
  
  在类中可以使用“$this”指代类本身,使用“->”运算符引用类中的各个变量或函数。类中创建的与类同名的函数称为构造函数。构造函数在创建新的对象实例时自动执