在阐述类的概念之前我们来先说说面向对象编程的概念:面向对象的程序设计(Object-Oriented Programming,简记为OOP)立意于创建软件重用代码,具备更好地模拟现实世界环境的能力,这使它被公认为是自上而下编程的优胜者。它通过给程序中加入扩展语句,把函数“封装”进编程所必需的“对象”中。面向对象的编程语言使得复杂的工作条理清晰、编写容易。说它是一场革命,不是对对象本身而言,而是对它们处理工作的能力而言。对象并不与传统程序设计和编程方法兼容,只是部分面向对象反而会使情形更糟。除非整个开发环境都是面向对象的,否则对象产生的好处还没有带来的麻烦多。有人可能会说PHP不是一个真正的面向对象编程的语言, PHP 是一个混合型 语言,你可以使用面向对象编程,也可以使用传统的过程化编程。然而,对于大型项目的开发,你可能想需要在PHP中使用纯的面向对象编程去声明类,而且在你的项目开发只用对象和类。随着项目越来越大,使用面向对象编程可能会有帮助,面向对象编程代码很容易维护,容易理解和重复使用,这些就是软件工程的基础。在基于Web的项目中应用这些概念就成为将来网站成功的关键。
对象(Object)是问题域或实现域中某些事物的一个抽象,它反映此事物在系统中需要保存的信息和发挥的作用;它是一组属性和有权对这些属性进行操作的一组服务的封装体。 关于对象要从两方面理解:一方面指系统所要处理的现实世界中的对象;另一方面对象是计算机不直接处理的对象,而是处理相应的计算机表示,这种计算机表示也称为对象。简单的来说,一个人就是一个对象,一个尺子也可以说是个对象。当这些对象可以用数据直接表示时,我们就称他为属性,尺子的度量单位可以是厘米,公尺或英尺,这个度量单位就是尺子的属性。
在PHP里我们可以定义一个类,类(Class)就是指变量与一些使用这些变量的函数的集合。PHP是一种松散类型的语言,所以通过类型重载不起作用,通过参数的个数不同来重载也不起作用。 有时在面向中重载构造函数非常好,这样你可以通过不同的方法创建对象(传递不同数量的参数)。在PHP中就是通过类来实现的。
在PHP中是通过类来完成信息封装的,在PHP中定义类的语法是:
复制代码 代码如下:
class Class_name // 在面向对象编程类中,习惯上类的第一个字符为大写,并且必须符合变量的命名规则。
{
//函数与变量的集合
}
?>
复制代码 代码如下:
class Student
{
var $str_Name; //姓名
var $str_Sex; //性别
var $int_Id; //学号
var $int_English; //英语成绩
var $int_maths; //数学成绩
}
?>
复制代码 代码如下:
function Input ( $Name, $Sex, $Id, $Englis, $Maths)
{
$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Id =$Id;
$this->int_Englis=$English;
$this->int_Maths=$Maths;
}
复制代码 代码如下:
function ShowInfo() //定义ShowInfo()函数
{
echo (“姓名:$this->str_Name
”);
echo (“性别:$this->str_Sex
”);
echo (“学号:$this->int_Id
”);
echo (“英语成绩:$this->int_English
”);
echo (“数学成绩:$this->int_Maths
”);
}
复制代码 代码如下:
class Student
{
var $str_Name;
var $str_Sex;
var $int_Id;
var $int_English;
var $int_maths;
function Input ( $Name, $Sex, $Id, $English, $Maths)
{
$this->str_Name=$Name;
$this->str_Sex =$Sex;
$this->int_Id =$Id;
$this->int_English=$English;
$this->int_Maths=$Maths;
}
function ShowInfo()
{
echo (“姓名:$this->str_Name
”);
echo (“性别:$this->str_Sex
”);
echo (“学号:$this->int_Id
”);
echo (“英语成绩:$this->int_English
”);
echo (“数学成绩:$this->int_Maths
”);
}
}
$Wing = new Student;
$Wing->Input (“Wing”,”男”,33,95,87);
$Paladin = new Student;
$Paladin->Input (“paladin”,”女”,38,58,59.5);
$Wing->ShowInfo();
$Paladin->ShowInfo();
?>