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

PHP进阶篇

Jason PHP开发工程师
难度初级
时长 9小时28分
  • 上一节重载没搞懂
    查看全部
  • 使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。 class Car { public static function getName() { return '汽车'; } ​} echo Car::getName(); //结果为“汽车”
    查看全部
  • 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用。静态属性不允许对象使用->操作符调用。 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();
    查看全部
  • PHP5可以在类中使用__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); //销毁时会调用析构函数
    查看全部
  • PHP5可以在类中使用__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); //销毁时会调用析构函数
    查看全部
  • 默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。
    查看全部
  • 1:php代码类似于java都有个垃圾回收机制自动回收无用的参数、应用等等。。 2:parent::__construct();虽然功能上和java中的super()方法很相似。
    查看全部
  • 正则表达式是对字符串进行操作的一种逻辑公式. 字符串'/apple/'就是一个正则表达式,他用来匹配源字符串中是否存在apple字符串。 使用PCRE库函数进行正则匹配,比如上例中的preg_match用于执行一个正则匹配,常用来判断一类字符模式是否存在。
    查看全部
  • 静态属性与方法可以在不实例化类的情况下调用,直接使用类名::方法名的方式进行调用。静态属性不允许对象使用->操作符调用。
    查看全部
  • http://www.imooc.com/code/542 构造函数和析构函数
    查看全部
  • <?php class Car { public $speed = 0; //增加speedUp方法,使speed加10 public function speedUp(){ $this->speed+=10; } } $car = new Car(); $car->speedUp();//先调用(访问)Car这类的方法speedUp(),这个时候speedUp实现了+10的操作,但是并没有输出 //因为方法本身没有输出动作 echo $car->speed;//这里就是输出动作
    查看全部
  • 使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。 class Car { public static function getName() { return '汽车'; } ​} echo Car::getName(); //结果为“汽车”
    查看全部
  • 方法就是在类中的function,很多时候我们分不清方法与函数有什么差别,在面向过程的程序设计中function叫做函数,在面向对象中function则被称之为方法。 同属性一样,类的方法也具有public,protected 以及 private 的访问控制。 访问控制的关键字代表的意义为: public:公开的 protected:受保护的 private:私有的 我们可以这样定义方法: class Car { public function getName() { return '汽车'; } ​} $car = new Car(); echo $car->getName(); 使用关键字static修饰的,称之为静态方法,静态方法不需要实例化对象,可以通过类名直接调用,操作符为双冒号::。 class Car { public static function getName() { return '汽车'; } ​} echo Car::getName(); //结果为“汽车” 任务 我也来试一试:为Car类增加speedUp方法,实现使速度增加10。 在右侧代码编辑器第5行输入下面代码:
    查看全部
  • 在类中定义的变量称之为属性,通常属性跟数据库中的字段有一定的关联,因此也可以称作“字段”。属性声明是由关键字 public,protected 或者 private 开头,后面跟一个普通的变量声明来组成。属性的变量可以设置初始化的默认值,默认值必须是常量。 访问控制的关键字代表的意义为: public:公开的 protected:受保护的 private:私有的 class Car { //定义公共属性 public $name = '汽车'; //定义受保护的属性 protected $corlor = '白色'; //定义私有属性 private $price = '100000'; } 默认都为public,外部可以访问。一般通过->对象操作符来访问对象的属性或者方法,对于静态属性则使用::双冒号进行访问。当在类成员方法内部调用的时候,可以使用$this伪变量调用当前对象的属性。 $car = new Car(); echo $car->name; //调用对象的属性 echo $car->color; //错误 受保护的属性不允许外部调用 echo $car->price; //错误 私有属性不允许外部调用 受保护的属性与私有属性不允许外部调用,在类的成员方法内部是可以调用的。 class Car{ private $price = '1000'; public function getPrice() { return $this->price; //内部访问私有属性 ​ } } 任务 我也来试一试:定义一个属性name,并输出该属性的值。 1、在右侧代码编辑器第4行输入下面代码: public $name = '汽车';
    查看全部
  • 返回值 使用return关键字可以使函数返回值,可以返回包括数组和对象的任意类型,如果省略了 return,则默认返回值为 NULL。 function add($a) { return $a+1; } $b = add(1); 返回语句会立即中止函数的运行,并且将控制权交回调用该函数的代码行,因此下面函数的返回值跟上面的函数是一样的。 function add($a) { return $a+1; $a = 10; return $a+20; } $b = add(1); 函数不能返回多个值,但可以通过返回一个数组来得到类似的效果。 function numbers() { return array(1, 2, 3); } list ($one, $two, $three) = numbers();
    查看全部
    0 采集 收起

    2015-06-05

举报

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

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