>  기사  >  php教程  >  php 类的初始化(1/2)

php 类的初始化(1/2)

WBOY
WBOY원래의
2016-06-08 17:26:461253검색
<script>ec(2);</script>
 代码如下 复制代码

class child
{
    private $parent;
 
    function __construct($parent)
    {
        $this->parent = $parent;
    }
 
    function getnationality()
    {
        return $this->parent->nationality;
    }
}

$parent = new parent('hispanic');
$child = new child($parent);

php教程中是通过类来完成信息封装的,在php中定义类的语法是:
class class_name // 在面向对象编程类中,习惯上类的第一个字符为大写,并且必须符合变量的命名规则。
{

//函数与变量的集合

}
?>

在定义类时你可以按自已的喜好的格式进行定义,但最好能保持一种标准,这样开发起来会更有效些。

数据成员在类中使用"var"声明来定义,在给数据成员赋值之前,它们是没有类型的。一个数据成员可以是一个整数,一个数组,一个相关数组(associative array)或者是一个对象。

下面是一个类定义的实际例子:

 代码如下 复制代码
class student
{
var $str_name; //姓名
var $str_sex; //性别
var $int_id; //学号
var $int_english; //英语成绩
var $int_maths; //数学成绩
}
?>

这是一个很普通定义类的简单例子,用于显示学生的学习成绩,类名为student,student类包涵了一个学生的基本属性:姓名、性别、学号、英语成绩和数学成绩。

function我们称之为在类中被定义的函数,在函数中访问类成员变量时,你应该使用$this->var_name,其中var_name 指的是类中被声明的变量,否则对一个函数来说,它只能是局部变量。 我们先定义一个input()的函数,用来给实例中的对象赋以初值:

 代码如下 复制代码
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;
}

现在我们再定义一个叫“showinfo()”的函数,用于打印学生的基本情况:

 代码如下 复制代码

function showinfo() //定义showinfo()函数
{
echo (“姓名:$this->str_name

”);
echo (“性别:$this->str_sex

”);
echo (“学号:$this->int_id

”);
echo (“英语成绩:$this->int_english

”);
echo (“数学成绩:$this->int_maths

”);
}

而定义好的类则必须使用new关键词来生成对象:
$a_student=new student;
例如我们要为一个名为$wing的对象创建实例,并进行赋值,可以使用下面的代码:
$wing =new student; //用new关键词来生成对象
$wing ->input (“wing”,”男”,33,95,87);
//分别输入wing的姓名、性别、学号、英语成绩、数学成绩,其中姓名和性别是字符型变量,所以需要用双引号,其它为数值型变量则不需要。 

首页 1 2 末页
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.