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

PHP进阶篇

Jason PHP开发工程师
难度初级
时长 9小时28分
  • 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用。静态属性不允许对象使用->操作符调用。 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();
    查看全部
  • __construct()定义一个构造函数,具有构造函数的类,会在每次对象创建的时候调用该函数,因此常用来在对象创建的时候进行一些初始化工作。 class Car { function __construct() { print "构造函数被调用\n"; } } $car = new Car(); //实例化的时候 会自动调用构造函数__construct,这里会输出一个字符串 在子类中如果定义了__construct则不会调用父类的__construct,如果需要同时调用父类的构造函数,需要使用parent::__construct()显式的调用。 class Car { function __construct() { print "父类构造函数被调用\n"; } } class Truck extends Car { function __construct() { print "子类构造函数被调用\n"; parent::__construct(); } } $car = new Truck(); 同样,PHP5支持析构函数,使用__destruct()进行定义,析构函数指的是当某个对象的所有引用被删除,或者对象被显式的销毁时会执行的函数。 class Car { function __construct() { print "构造函数被调用 \n"; } function __destruct() { print "析构函数被调用 \n"; } } $car = new Car(); //实例化时会调用构造函数 echo '使用后,准备销毁car对象 \n'; unset($car); //销毁时会调用析构函数 当PHP代码执行完毕以后,会自动回收与销毁对象,因此一般情况下不需要显式的去销毁对象。
    查看全部
  • heredoc语法结构定义的字符串: $hello = <<<TAG hello world TAG;
    查看全部
    0 采集 收起

    2018-03-22

  • HP中的重载指的是动态的创建属性与方法,是通过魔术方法来实现的。属性的重载通过__set,__get,__isset,__unset来分别实现对不存在属性的赋值、读取、判断属性是否设置、销毁属性。 方法的重载通过__call来实现,当调用不存在的方法的时候,将会转为参数调用__call方法,当调用不存在的静态方法时会使用__callStatic重载。
    查看全部
  • 对象继承
    查看全部
  • 对象复制,在一些特殊情况下,可以通过关键字clone来复制一个对象,这时__clone方法会被调用,通过这个魔术方法来设置属性的值。 对象序列化,可以通过serialize方法将对象序列化为字符串,用于存储或者传递数据,然后在需要的时候通过unserialize将字符串反序列化成对象进行使用。
    查看全部
  • 方法的重载通过__call来实现,当调用不存在的方法的时候,将会转为参数调用__call方法.需注意 1:第一个形参放方法名, 第二个是实参,相当一个数组 2: __call 是双下划线
    查看全部
  • 1,当我们试图调用类中一个不可见或者未定义方法的时候,类中定义好的__call这个魔术方法就会去监听这个动作。 并且会自动将我们试图调用的方法名放入到__call方法的第一个参数中,将方法里面的实际参数放到__call方法的第二个参数中(如果没有传递任何参数,那么第二个参数就是一个空数组)。 2,__call里面的参数是形式参数,参数名可以自定义。
    查看全部
  • 在面向过程的程序设计中function叫做函数,在面向对象中function则被称之为方法。
    查看全部
  • php输出命令: (1)echo"helloworld!";---echo命令 (2)print();输出语句,是函数,有返回值。输出成功返回1,失败返回0。 (3)printf();格式化输出字符串。例:printf("%d,%f",12,12.3); (4)sprintf();格式化拼接字符串,不是输出语句,只能将字符串拼接。 (5)print_r();输出数组、对象等复合数据类型
    查看全部
  • function_exists('func') class_exists('MyClass') !file_exists($filename) method_exists('method')判断函数,类,文件,方法是否存在
    查看全部
    0 采集 收起

    2015-07-13

  • <?php $str = '苹果很好吃。'; //请将变量$str中的苹果替换成香蕉 echo $str; $str=str_replace('苹果','香蕉',$str); echo $str; ?>字符串替换函数
    查看全部
    0 采集 收起

    2018-03-22

  • foreach循环可以将数组里的所有值都访问到, $fruit=array('apple'=>"苹果",'banana'=>"香蕉",'pineapple'=>"菠萝"); //$fruit=array('苹果','香蕉','菠萝'); foreach($fruit as $k=>$v){ echo '<br>水果的英文键名:'.$k.',对应的值是:'.$v; }
    查看全部
  • $fruit = array('apple'=>"苹果",'banana'=>"香蕉"); $fruit0 = $fruit['banana']; ======〉只需把fruit当作是一个参数,而不是数组fruit的第一位元素 print_r($fruit0);
    查看全部
  • //第一种; $arr = array('apple' => '苹果'); //第二种; $arr = array(); $arr['apple'] = '苹果';
    查看全部

举报

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

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