欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php-面向对象(1)

程序员文章站 2022-06-14 21:13:43
...
1.回顾:上篇的学习了php高级中的 过滤器

2.从这篇开始将学习 php——面向对象

3.面向对象

3.1了解

   (1)php5 引入了新的对象模型 (object model),重写了php的处理对象方式,允许更加的性能
   (2)新特性包括:可见性,抽象类和final类,类方法,魔术方法,接口,对象克隆和类型提示
   (3)php对象是按引用传递的,即每个包含对象的变量都持有对象的引用(reference),而不是整个对象的拷贝

  3.2基本概念
   (1) 关键字 class开头,后面跟着类名,可以是任何非php保留字的名字
   (2) 包含类成员和方法的定义
   (3) 伪变量$this 可以在当一个方法在对象内调用时使用。
   (4) $this是一个到调用对象的引用
   (5) 通常方法所属于对象,但也可以是另一个对象,如果该方法是从第二个对象内静态调用的话

3.3 $this 的使用

$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 "
"; echo $this->var; echo $this->t1; } }

3.5 new关键字

(1)创建对象实例的时候,必须创建一个新的对象并将其赋值给一个变量

     (2)每次创建新对象时,该对象总是被赋值,除非构函数出错

//调用
      $c=new aclass();
      $c->displayvar();

3.6 对象赋值

当把一个对象已经创建的实例赋值给新变量的时候,新变量会访问同一个实例

      #当把一个对象已经创建的实例赋值给新变量的时候,新变量会访问同一个实例
      $d=$c;
      $e =& $c;

      $c->var='$d 有这个值';

      $c=NULL; 
      echo "
"; var_dump($c); //结果:NULL var_dump($d); //结果:object(aclass)#3 (2) { ["var"]=> string(15) "$d 有这个值" ["t1"]=> string(8) "我是t1" } var_dump($e); //结果:NULL

下篇将学习,继承,属性和静态属性/方法(static)

版权声明:本文为博主原创文章,未经博主允许不得转载。

以上就介绍了php-面向对象(1),包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

php-面向对象(1)

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频