-
数据类型之对象
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代表类本身,如果实例对象,则代表对象本身
对于所有对象化编程语言来说,可以用一句话来概括其编程核心,那就是“一切谐为对象”;那么为什么又要在数据类型中单独列出一个对象数据类型呢?
首先,对象是存储数据和有关如何处理数据的信息的数据类型;说到这里可以给大家简单的说一下类的概念,那么什么又是类呢?可以这样理解类就是我们工厂中用于生产产品而设计出的模板,而对象就是根据这个模板设计出的产品。
好,现在我们对对象有所了解了;接下来我具体的来说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代表类本身,如果实例对象,则代表对象本身
栏目列表
最新更新
VB.NET使用DataGridView分页显示
WinForm轻松实现自定义分页 (转载)
Mac系统下使用brew搭建PHP(LNMP/LAMP)开发环境
在win系统安装配置 Memcached for PHP 5.3 图文
箱图在数据预处理中的应用
Python WEB开发:用Tornado框架制作简易【表
自从学会了用python解析视频,都不用去找
Python代码阅读(第50篇):对列表间隔取
Python爬虫+数据分析+可视化展示,分析《
教你怎么给心爱的她自动定时发送消息!
MongoDB常用命令(2)
MongoDB基本介绍与安装(1)
SQLServer触发器调用JavaWeb接口
SQL Server索引的原理深入解析
SqlServer2016模糊匹配的三种方式及效率问题
SQL中Truncate的用法
sqlserver 多表关联时在where语句中慎用tri
链接服务器读取Mysql---出现消息 7347,级别
SQL Server解惑——为什么你拼接的SQL语句换
MySQL视图了解一下
PHP小技巧之函数重载
一组PHP加密解密函数分享
php截取字符串函数substr,iconv_substr,mb_subs
使用PHP函数scandir排除特定目录
PHP5.5和之前的版本empty函数的不同之处
PHP中strlen()和mb_strlen()的区别浅析
PHP生成等比缩略图类和自定义函数分享
PHP数字和字符串ID互转函数(类似优酷I
php中eval函数的危害与正确禁用方法
2个比较经典的PHP加密解密函数分享