VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > 网站开发 > PHP > PHP教程 >
  • 数据类型之对象

php教程对象
对于所有对象化编程语言来说,可以用一句话来概括其编程核心,那就是“一切谐为对象”;那么为什么又要在数据类型中单独列出一个对象数据类型呢?
首先,对象是存储数据和有关如何处理数据的信息的数据类型;说到这里可以给大家简单的说一下类的概念,那么什么又是类呢?可以这样理解类就是我们工厂中用于生产产品而设计出的模板,而对象就是根据这个模板设计出的产品。
好,现在我们对对象有所了解了;接下来我具体的来说PHP中的对象这一特定数据类型。
在 PHP 中,对象必须事先声明,那么这个声明包括类的定义和对象变量的赋值。如:
 
<?php
class Car
{
    var $color;
       var $price;
    function __construct($color="green",$price=200000) {
      $this->color = $color;
         $this->price = $price;
    }
}
 
function print_vars($obj) {
   foreach (get_object_vars($obj) as $prop => $val) {
     echo "\t$prop = $val\n";
   }
}
 
// php教程实例一个对象
$carSample = new Car("blue",300000);
 
// 显示 carSample 属性
echo "\t属性名: 属性值\n";
print_vars($carSample);
 
?>
 
这里我首先说明一下
class Car
{
    var $color;
       var $price;
    function __construct($color="green",$price=200000) {
      $this->color = $color;
         $this->price = $price;
    }
}
 
这里是对类的声明
其中
class Car
用于声明一个类,class在英文中就是类的意思,car是类的名字,这个名字可以自定义没有特别的约束,只要符合变量命名规则即可;外层大括号包含了类里的面的全部内容;
    var $color;
       var $price;
这两行用于声明两个变量,这也就成为了类的属性,说到这里就要说一下什么是属性:
我们提到过,类就是创建对象的模板。我们可以用现实生活的例子打比方,如汽车是一个类,而具体到某一辆汽车就是一对象。那么汽车,会有颜色,时速等,这都是汽车这个类的属性,具体到某一辆汽车,其属性值可以不同。
function __construct($color="green",$price=200000) {
      $this->color = $color;
         $this->price = $price;
    }
这里创建了一个函数,函数在类里面称之为方法,也可以称之为功能,就像是汽车可以前进,可以后退,可以转弯,这些都是其功能,也可以称之为汽车这个类的方法。
当前方法,接受两个参数;分别是 颜色和价格,在创建这个类的对象时,会为其传递值,如果不传递值会用其默认值,在方法里面,将当前方法的两接受的两个参数,分别赋给当前类的两个属性,作为其属性值。
 
function print_vars($obj) {
   foreach (get_object_vars($obj) as $prop => $val) {
     echo "\t$prop = $val\n";
   }
}
 
这里是在类以外的部分定义的方法,用于输出指定对象的所有属性值,其接受的参数就是一个类的实例对象,而
   foreach (get_object_vars($obj) as $prop => $val) {
     echo "\t$prop = $val\n";
   }
这一部分,且于遍历类中的所有属性和属性值,然后将其输出,get_object_vars($obj)用于获取对象,这里将其属性和属性值分别起了两个别名,存储到两个变量中如
get_object_vars($obj) as $prop => $val
每次循环,都会将其属性和属性值用echo进行输出。
请注意:php教程这里的this代表类本身,如果实例对象,则代表对象本身


相关教程