1.回顾:上篇的学习了php高级中的 过滤器
2.从这篇开始将学习 php——面向对象
3.面向对象
3.1了解
立即学习“PHP免费学习笔记(深入)”;
(1)php5 引入了新的对象模型 (object model),重写了php的处理对象方式,允许更加的性能 (2)新特性包括:可见性,抽象类和final类,类方法,魔术方法,接口,对象克隆和类型提示 (3)php对象是按引用传递的,即每个包含对象的变量都持有对象的引用(reference),而不是整个对象的拷贝
3.2基本概念
<pre class="brush:php;toolbar:false;"> (1) 关键字 class开头,后面跟着类名,可以是任何非php保留字的名字 (2) 包含类成员和方法的定义 (3) 伪变量$this 可以在当一个方法在对象内调用时使用。 (4) $this是一个到调用对象的引用 (5) 通常方法所属于对象,但也可以是另一个对象,如果该方法是从第二个对象内静态调用的话
$this的使用
class one{
function oneFun(){
if(isset($this)){
echo '$this 的定义是 (';
echo get_class($this);
echo ')';
}else{
echo '$this 没有定义';
}
}
}
class two{
function twoFun(){
one::oneFun();
}
}
$a =new one();
$a->oneFun(); //结果:$this 的定义是 (one)
one::oneFun();//结果:$this 没有定义
$b=new two();
$b->twoFun(); //结果:$this 的定义是 (two)
two::twoFun();//结果:$this 没有定义3.4. 简单类定义
class aclass{
//成员变量
public $var="我是成员变量";
public $t1="我是t1";
//成员函数/方法
public function displayVar(){
echo "<br>";
echo $this->var;
echo $this->t1;
}
}3.5 new关键字
(1)创建对象实例的时候,必须创建一个新的对象并将其赋值给一个变量
(2)每次创建新对象时,该对象总是被赋值,除非构函数出错
//调用
$c=new aclass();
$c->displayvar();3.6 对象赋值
当把一个对象已经创建的实例赋值给新变量的时候,新变量会访问同一个实例
立即学习“PHP免费学习笔记(深入)”;
#当把一个对象已经创建的实例赋值给新变量的时候,新变量会访问同一个实例
$d=$c;
$e =& $c;
$c->var='$d 有这个值';
$c=NULL;
echo "<br>";
var_dump($c); //结果:NULL
var_dump($d); //结果:object(aclass)#3 (2) { ["var"]=> string(15) "$d 有这个值" ["t1"]=> string(8) "我是t1" }
var_dump($e); //结果:NULL版权声明:本文为博主原创文章,未经博主允许不得转载。
以上就介绍了php-面向对象(1),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号