php类与对象的基本语法

1.构造方法

      

<?php

class Person{

public $name;
public $age;

//在php中new关键字才会调用__construct方法,如果没有new就不会调用该方法;
// 可以写两种形式【php5、php4】的构造方法,但是无参构造和有参构造只能有一个,两种同时存在时优先选择 __construct这种的构造方法 写两种是为了兼容php4和php5
//构造方法无返回值
/**
*无参构造方法 【就是给对象取个名字,但是创建本身是由系统完成】 php5独有的
*/

public function __construct(){//__是两个中文的下划线
echo "我就是构造方法<br/>";
}
/**
*有参构造方法 php5独有的
*/

public function __construct($namei,$agei){//__是两个中文的下划线
$this->name=$namei;//$this代表当前对象
$this->age=$agei;
echo "我就是构造方法<br/>";
}
/**
*构造方法 php4写法
*/

public function Person(){
echo "我就是构造方法<br/>";
}
public function speak(){
echo "你好,世界!";

}
public function jisuan($n){
$res=0;
for($i=1;$i<=$n;$i++){

$res+=$i;

}
return $res;

}
public function max22($arr){//如果想在函数中改变外层传过来的数组中的元素值,就必须&$arr这样写(就是传的引用地址);否者就传的是值,在函数执行完了之后就释放栈
$arr[0]=100;
$maxValue=$arr[0];
$maxIndex=0;
for($i=0;$i<count($arr);$i++){
if($maxValue<$arr[$i]){
$maxValue=$arr[$i];
$maxIndex=$i;
}


}
return $maxValue;
}
}

?>

2.析构方法,php5才有析构方法的,一个类中只有一个析构方法

    其作用在于释放资源

  class Person{  

public $name;
public $age; 
// 可以写两种形式【php5、php4】的构造方法,但是无参构造和有参构造只能有一个,两种同时存在时优先选择 __construct这种的构造方法 写两种是为了兼容php4和php5
//构造方法无返回值
/**
*无参构造方法 【就是给对象取个名字,但是创建本身是由系统完成】 php5独有的
*/

public function __construct(){//__是两个英文的下划线
echo "我就是构造方法<br/>";
}  

/**沟析方法*/
public function __destruct(){//系统自己调用,在创建对象之后销毁,
/*该方法在什么时候被调用?
1.在程序(进程结束)退出时调用
2.当一个对象被称为垃圾对象的时候,也会被调用析构函数
php中什么时候对象会变成垃圾对象
在对象没有任何引用指向它的时候就会成为一个垃圾对象

*/
echo "销毁资源";//可以用来销毁资源、关闭数据库


}

}

$a=new Person("黎明",45);
$a1=new Person("黎明2222",45);
$a1=null;//$a1为垃圾对象了,所以$a1先被销毁

原文地址:https://www.cnblogs.com/tangyue/p/3741217.html