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

PHP进阶篇

Jason PHP开发工程师
难度初级
时长 9小时28分
学习人数
综合评分8.90
570人评价 查看评价
9.3 内容实用
8.8 简洁易懂
8.6 逻辑清晰
  • 1、继承的关键字是extends

    2、关键字$this

    3、记住格式是$this ->speed +=60;

          return $this ->speed;

    查看全部
  • 1、非静态方法调用时需要实例化对象,通过对象调用方法,格式是$car = new Car(); echo $car -> getName()。

    2、静态方法调用时不需要实例化对象,直接调用即可,格式是echo Car : : getName();

    查看全部
  • 对象比较,当同一个类的两个实例的所有属性都相等时,可以使用比较运算符==进行判断,当需要判断两个变量是否为同一个对象的引用时,可以使用全等运算符===进行判断。

    class Car {
    }
    $a = new Car();
    $b = new Car();
    if ($a == $b) echo '==';   //true
    if ($a === $b) echo '==='; //false

    对象复制,在一些特殊情况下,可以通过关键字clone来复制一个对象,这时__clone方法会被调用,通过这个魔术方法来设置属性的值。

    class Car {
        public $name = 'car';
        
        public function __clone() {
            $obj = new Car();
            $obj->name = $this->name;
        }
    }
    $a = new Car();
    $a->name = 'new car';
    $b = clone $a;
    var_dump($b);

    对象序列化,可以通过serialize方法将对象序列化为字符串,用于存储或者传递数据,然后在需要的时候通过unserialize将字符串反序列化成对象进行使用。

    class Car {
        public $name = 'car';
    }
    $a = new Car();
    $str = serialize($a); //对象序列化成字符串
    echo $str.'<br>';
    $b = unserialize($str); //反序列化为对象
    var_dump($b);


    查看全部
  • 代码正确,但总是不通过!!

    <?php

    $subject = "my email is spark@imooc.com";

    //在这里补充代码,实现正则匹配,并输出邮箱地址

    //$pattern = '/\w+\@\w+\.\w+/';

    $pattern ='/\w\s(\w+\@\w+\.\w+)/';

    preg_match($pattern,$subject,$matches);

    print_r($matches);


    查看全部
  • <?php

    //定义一个Car类并实例化一个对象


    class Car {

        public $name = "Carcar";

        public $type = "type of";

        public $price = 100000;

        public $topSpeed = 300;

        public function getInfo() {

            echo "这是一个名字叫".$this->name."的".$this->type.", 她可以很温柔,有".$this->price."的感觉,想起她的时候有,".$this->topSpeed."次";

        }

    }


    $bus = new Car();

    $bus -> name = "刘何娟";

    $bus -> type = "女子";

    $bus -> price = 520520;

    $bus -> topSpeed = 100;


    $bus -> getInfo();


    查看全部
  • ·   类 − 定义了一件事物的抽象特点。类的定义包含了数据的形式以及对数据的操作。

    ·   对象 − 是类的实例。

    对象的主要三个特性:

    ·   对象的行为:可以对 对象施加那些操作,开灯,关灯就是行为。

    ·   对象的形态:当施加那些方法是对象如何响应,颜色,尺寸,外型。

    ·   对象的表示:对象的表示就相当于身份证,具体区分在相同的行为与状态下有什么不同。

        比如 Animal(动物) 是一个抽象类,我们可以具体到一只狗跟一只羊,而狗跟羊就是具体的对象,他们有颜色属性,可以写,可以跑等行为状态。

    ·  多态:不同的对象,收到同一消息可以产生不同的结果,这种现象称为多态性。

    ·  重载:同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。

    ·   抽象性: 是指将具有一致的数据结构(属性)和行为(操作)的对象抽象成类。一个类就是这样一种抽象,它反映了与应用有关的重要性质。

    ·  封装:是指将现实世界中存在的某个客体的属性与行为绑定在一起,并放置在一个逻辑单元内。

    ·   构造函数 :主要用来在创建对象时初始化对象, 即为对象成员变量赋初始值,总与new运算符一起使用在创建对象的语句中。

    ·   析构函数: 与构造函数相反,当对象结束其生命周期时(例如对象所在的函数已调用完毕),系统自动执行析构函数。析构函数往往用来做"清理善后" 的工作(例如在建立对象时用new开辟了一片内存空间,应在退出前在析构函数中用delete释放)。


    查看全部
  • yi1

    cookie将数据存储在客户端,建立起用户与服务器之间的联系,通常可以解决很多问题,但是cookie仍然具有一些局限:

    cookie相对不是太安全,容易被盗用导致cookie欺骗
    单个cookie的值最大只能存储4k
    每次请求都要进行网络传输,占用带宽

    session是将用户的会话数据存储在服务端,没有大小限制,通过一个session_id进行用户识别,PHP默认情况下session id是通过cookie来保存的,因此从某种程度上来说,seesion依赖于cookie。但这不是绝对的,session id也可以通过参数来实现,只要能将session id传递到服务端进行识别的机制都可以使用session。


    查看全部
  • 在面向过程的程序设计中function叫做函数,在面向对象中function则被称之为方法。

    同属性一样,类的方法也具有public,protected 以及 private 的访问控制。

    访问控制的关键字代表的意义为:
    public:公开的
    protected:受保护的
    private:私有的

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

    查看全部
  • 在类中定义的变量称之为属性,通常属性跟数据库中的字段有一定的关联,因此也可以称作“字段”。

    属性声明是由关键字 public,protected 或者 private 开头,后面跟一个普通的变量声明来组成。

    属性的变量可以设置初始化的默认值,默认值必须是常量。

    访问控制的关键字代表的意义为:

    public:公开的
    protected:受保护的
    private:私有的

    调用对象属性方法:

    默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,

    对于静态属性则使用::双冒号进行访问。

    当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。

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




    查看全部
  • 上一节,我们使用汽车举例来认识了类与对象,本节我们来了解一下类的定义方法,类通过关键字class开头,然后是类名与花括号,在花括号中定义类的属性与方法。类名必须是字母或下划线开头,后面紧跟若干个字母、数字或下划线,类名最好能够表意,可以采用名词或者英文单词。

    查看全部
  • 先理解意思操作符意思: 

    无论是"->"还是"::",可以理解为"的",


    this :当前对象的指针 
    self:当前类的指针 调用静态方法时
    parent:当前父类的指针 调用静态方法时

    查看全部
  • __construct(),类的构造函数
    __destruct(),类的析构函数
    __call(),在对象中调用一个不可访问方法时调用
    __callStatic(),用静态方式中调用一个不可访问方法时调用
    __get(),获得一个类的成员变量时调用
    __set(),设置一个类的成员变量时调用
    __isset(),当对不可访问属性调用isset()或empty()时调用
    __unset(),当对不可访问属性调用unset()时被调用。
    __sleep(),执行serialize()时,先会调用这个函数

    查看全部
  • class 类名  extends 父类名 {}

    查看全部
  • => 是数组成员访问符号
    -> 是对象成员访问符号
    比如:
    $array = array("site map"=>"map.php"); //定义了一个数组,包含一个数组成员:键名为site map,值为map.php
    $this->$name = $value
    $this 在php语言里是个特定的变量,它代表了类本身,->是访问其类成员的操作符,$this->$name = $value,这句代码意思是:将当前类的name变量的值设置为 $value.
    (转自百度知道)

    查看全部
  • yi1

    对象比较,当同一个类的两个实例的所有属性都相等时,可以使用比较运算符==进行判断,当需要判断两个变量是否为同一个对象的引用时,可以使用全等运算符===进行判断。

    对象复制,在一些特殊情况下,可以通过关键字clone来复制一个对象,这时__clone方法会被调用,通过这个魔术方法来设置属性的值。

    对象序列化,可以通过serialize方法将对象序列化为字符串,用于存储或者传递数据,然后在需要的时候通过unserialize将字符串反序列化成对象进行使用。

    查看全部

举报

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

微信扫码,参与3人拼团

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

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