32、PHP创建对象与构造函数

阅读() @2019-05-12 11:46:33

PHP与JavaScript创建对象的方法类似,都可以用new关键字来创建,而且都有构造函数,只是语法有些不一样,具体如下:

class Person{
	public $name;
	public $height;
	function __construct($a,$b){
		$this->name = $a;
		$this->height = $b;
	}
	function show(){
		echo '姓名:'.$this->name;
		echo '<br/>';
		echo '身高:'.$this->height;
	}
}
$person = new Person('赵一鸣','180cm');
$person->show();

上面的代码首先定义一个Person的类,然后定义类的属性$name和$height,还有构造函数__construct(注意是两个下划线),通过__construct来初始化对象属性,另外还有一个show方法。

通过new关键字实例化创建一个对象,这个对象就可以执行它的show方法。

与JavaScript所不同的是,PHP需要通过一个单独的构造函数来承载它的属性,但是js可以直接定义属性,如下:

function Person(name,height){
	this.name = name;
	this.height = height;
}
Person.prototype.show = function(){
	console.log(this.name);
	console.log(this.height);
}
var person = new Person('zym','180cm');
person.show();

可以看到,JS和PHP创建对象的方法很相似,只要记住特定的语法,就不难理解了。

常量池、栈、堆的内存概念同时适用于js和php!

微信二维码
锐壳主机