为了账号安全,请及时绑定邮箱和手机立即绑定

PHP进阶篇

Jason PHP开发工程师
难度初级
时长 9小时28分
学习人数
综合评分8.90
570人评价 查看评价
9.3 内容实用
8.8 简洁易懂
8.6 逻辑清晰
  • \在这里是转义符,是为了区分开正则匹配符号和正常的符号的情况。\-告诉计算机代表内容中包含-,而不是代表范围的”-“符号。[\w\-]+表示多次匹配方括号中定义的字符类整体(字母、数字、下划线(\w),还有-(\-))。

    查看全部
  • '/\w:(\w{6}+\s{1}+\w{4})/'

    \w:       意思是  任意个字母 向后匹配到 : (冒号)位置,    这里 匹配  name:

    \w{6}    意思是 再向后匹配6个字符,大括号里代表匹配多少个   这里匹配  steven

    \s{1}      意思是 1个空格     这里匹配  空格

    \w{4}     意思是 再向后匹配4个字符  这里匹配 jobs


    查看全部
  • [\d]表示 匹配数字, {3,4}表示匹配3次或四次 ,

    查看全部
    0 采集 收起 来源:元字符与转义

    2020-01-27

  • $p = '/\d+\-\d+/';

    正斜线是分隔符;

    第一组 \d+是匹配电话的前几位数字,\d匹配数字,+表示1次或多次匹配;

    \-匹配-,因为-是有特殊意义的元字符,所以需要转义;

    第二组 \d+是匹配电话的后几位数字,\d匹配数字,+表示1次或多次匹配。


    查看全部
    0 采集 收起 来源:元字符与转义

    2020-01-27

  • PHP类和对象之访问控制

    如果构造函数定义成了私有方法,则不允许直接实例化对象了,这时候一般通过静态方法进行实例化,在设计模式中会经常使用这样的方法来控制对象的创建,比如单例模式只允许有一个全局唯一的对象。

    查看全部
  • PHP类和对象之Static静态关键字

    静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用。静态属性不允许对象使用->操作符调用

    静态属性需要加$符号

    静态方法中,$this伪变量不允许使用。可以使用self,parent,static在内部调用静态方法与属性。


    查看全部
  • PHP类和对象之构造函数和析构函数

    PHP5可以在类中使用__construct()定义一个构造函数,具有构造函数的类,会在每次对象创建的时候调用该函数,因此常用来在对象创建的时候进行一些初始化工作。

    在子类中如果定义了__construct则不会调用父类的__construct,如果需要同时调用父类的构造函数,需要使用parent::__construct()显式的调用。

    同样,PHP5支持析构函数,使用__destruct()进行定义,析构函数指的是当某个对象的所有引用被删除,或者对象被显式的销毁时会执行的函数。

    查看全部
  • PHP类和对象之定义类的方法

    使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。

    查看全部
  • PHP类和对象之类的属性

    默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。

    受保护的属性与私有属性不允许外部调用,在类的成员方法内部是可以调用的。

    查看全部
  • 首先要理解函数的重载,就是同一个函数名,传递不同参数,来实现不同的方法内容。

    但php里是不能直接实现的,要通过__call方法。

    所谓的函数不存在,是指函数没有在类中定义,但你可以在__call方法中定义这个函数的内容,这个函数的名字就是$name承载的值,而$args就是这个函数传递的参数。

    123456789101112131415161718192021222324252627282930<?phpclass Magic {  //__call方法,实例调用Magic类中未被定义的方法时执行  function __call($name,$arguments) {    //判断实例调用的是否是foo方法      if($name=='foo') {        //如果是整形,则执行私有方法foo_for_int         if(is_int($arguments[0])){            $this->foo_for_int($arguments[0]);        }        //如果是字符串,则调用私有方法foo_for_string        if(is_string($arguments[0])){           $this->foo_for_string($arguments[0]);          }      }    }     //两个私有方法,实例不能直接调用  private function foo_for_int($x) {      print("参数是一个整数!");    }     private function foo_for_string($x) {      print("参数是一个字符串!");    }  //生成一个实例$x$x new Magic();//参数不同,执行的方法也不同  $x->foo(3);  $x->foo("3");  ?>

    上面是一个__call方法使用的举例,实例$x调用foo方法,类中没有,执行__call方法,__call方法则根据foo的参数不同,调用了类中的两个私有方法,从而实现了函数的重载


    查看全部
  • 子类覆盖父类的方法是要通过在子类中重新编写新的方法,如果不更改的话,则默认子类继承父类的方法。例如

    class parentClass { public function test(){ echo "parent"; }}

    1--> class childClass extends parent{ } 如果子类继承父类但并没有重写其中的test方法,那么则继承父类的test方法

    即 $child = new childClass(); $child->test();//输出parent

    2--> classchildClass extends parent{ public function test(){ echo "child"; }} 如果子类重写了方法,那么再实例化childClass类调用test方法会调用子类重写后的test方法。也就是说,如果儿子有能力(指重写了方法),那么就能够继承父亲的财产(父类的方法)并且把它发扬光大(重写);如果儿子没能力(没有重写方法),那么久只能够啃老(调用父类的方法)。这样希望能帮你理解吧。


    查看全部
  • 类的属性必须定义为公有 受保护 私有之一

    类中的方法不设置关键词 默认为公有


    查看全部
  • 子类中含有的protected方法或private方法,在该子类的所有父类中无法调用,protected方法可以被该类和该类的所有子类调用,private方法只能被该类调用。

    查看全部
  • 如果构造函数定义成了私有方法,则不允许直接实例化对象了,这时候一般通过静态方法进行实例化,在设计模式中会经常使用这样的方法来控制对象的创建,比如单例模式只允许有一个全局唯一的对象。

    查看全部
  • 问控制通过关键字public,protected和private来实现。被定义为公有的类成员可以在任何地方被访问。被定义为受保护的类成员则可以被其自身以及其子类和父类访问。被定义为私有的类成员则只能被其定义所在的类访问。

    查看全部

举报

0/150
提交
取消
课程须知
需要有一定的网页基础知识如HTML、CSS样式等,并且已经学习完成《PHP入门篇》对PHP已经有了简单的了解,如变量、常量、数据类型等。
老师告诉你能学到什么?
全面的掌握PHP的理论知识与实践中的应用方法,提高编程能力与掌握网页开发技能。

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!