为了账号安全,请及时绑定邮箱和手机立即绑定
慕课网数字资源数据库体验端
PHP进阶篇_学习笔记_慕课网
为了账号安全,请及时绑定邮箱和手机立即绑定

PHP进阶篇

Jason PHP开发工程师
难度初级
时长 9小时28分
  • 对象的高级特性 对象比较,当同一个类的两个实例的所有属性都相等时,可以使用比较运算符==进行判断,当需要判断两个变量是否为同一个对象的引用时,可以使用全等运算符===进行判断。 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);
    查看全部
  • 英文字符串截取函数:substr(字符串变量,start开始位置,截取个数) 中文字符串截取函数:mb_substr(字符串变量,开始位置,截取个数)
    查看全部
    0 采集 收起

    2015-01-30

  • 获取字符串长度strlen() 注:中文汉字长度:mb_strlen() eg:mb_strlen(变量名,"UTF8");
    查看全部
    0 采集 收起

    2018-03-22

  • 去除字符串的空格: trim去除一个字符串两端的空格; ltrim去除一个字符串左侧的空格; rtrim去除一个字符串右侧的空格。
    查看全部
    0 采集 收起

    2015-01-30

  • serialize方法将对象序列化为字符串 __clone()克隆方法
    查看全部
  • 属性重载通过__set,__get,__isset,__unset分别实现对不存在属性的赋值、读取、判断属性是否设置、销毁属性 方法的重载通过__call来实现,当调用不存在的方法时,将会转为参数调用__call方法,当调用不存在静态方法时会使用__callStatic重载
    查看全部
  • function_exists("函数名")判断函数是否存在; class_exists("类名"); file_exists("文件名"); method_exists();
    查看全部
    0 采集 收起

    2018-03-22

  • Static静态关键字 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用。静态属性不允许对象使用->操作符调用。 class Car { private static $speed = 10; public static function getSpeed() { return self::$speed; } } echo Car::getSpeed(); //调用静态方法 静态方法也可以通过变量来进行动态调用 $func = 'getSpeed'; $className = 'Car'; echo $className::$func(); //动态调用静态方法 静态方法中,$this伪变量不允许使用。可以使用self,parent,static在内部调用静态方法与属性。 class Car { private static $speed = 10; public static function getSpeed() { return self::$speed; } public static function speedUp() { return self::$speed+=10; } } class BigCar extends Car { public static function start() { parent::speedUp(); } } BigCar::start(); echo BigCar::getSpeed();
    查看全部
  • <?php class Car { private static $speed = 10; public function getSpeed() { return self::$speed; } //在这里定义一个静态方法,实现速度累加10 public static function speedUp(){ return self::$speed+=10; } } $car = new Car(); Car::speedUp(); //调用静态方法加速 echo $car->getSpeed(); //调用共有方法输出当前的速度值
    查看全部
  • 注:属性必须定义访问控制。 如果构造函数定义成了私有(private)方法,则不允许直接实例化对象了,这时一般通过静态方法进行实例化, $car=Car::方法();
    查看全部
  • function__destruct()析构函数会在程序结束时自动调用。 通过把变量设为null(空),可以出发析构函数。 析构函数通常被用于清理程序使用的资源。eg:程序使用了打印机,那么可以在析构函数里面释放打印机资源。
    查看全部
    0 采集 收起

    2015-01-30

  • function__construct():构造函数,在对象被实例化时自动调用。this为变量,表示对象自身。 function__construct($name,$height,$weight){ $this->name=$name; $this->height=$height; $this->weight=$weight; } $jordan=new NbaPlayer("Jorder","200","120"); echo $jordan->name; 每一次用new实例化对象的时候,都会用类名后面的参数列表调用构造函数。
    查看全部
    0 采集 收起

    2018-03-22

  • 静态属性和方法属于类本身。
    查看全部
  • public 公开的; protected 受保护的; private 私有的; 一般通过->对象操作符来访问对象的属性或方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用时,可使用$this伪变量调用当前对象属性。 注:受保护和私有属性不允许外部调用,在类成员方法内部是可以的。
    查看全部
  • 方法内部可使用$this伪变量调用属性和方法。 创建一个类的实例,使用new关键字创建一个对象。
    查看全部

举报

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

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