谁能给我解释下PHP类中的这个构造函数,使用的是数组作为参数.
classcontact{protected$id;protected$first_name;protected$last_name;protected$position...
class contact {
protected $id;
protected $first_name;
protected $last_name;
protected $position;
protected $email;
protected $phone;
public function __construct($input=false) {
if(is_array($input)){
foreach ($input as $key => $val) {
$this->$key = $val;
}
}
}
一般做构造函数,都是用的普通模式,也就是类似
public function __construct($first_name, $last_name, $address, $phone_number, $boat_name, $reg_num, $boat_length, $boat_pic) {
$this->owner_id=null;
$this->first_name = $first_name;
$this->last_name = $last_name;
$this->address = $address;
}
第一种方法里,我个人理解,就是传进一个数组(其实数组便于管理,这点我是知道的), 然后使用了一个foreach 遍历数组,后面紧跟着$this->$key = $val;这是说把数组元素值赋值给了键名,那岂不是如果每个传进来的数组的元素值是不一样的,那这个键名也是变化的,怎么跟我这个类当中的类属性有关联?我不明白这么做的目的和好处,希望有高手帮个忙.谢谢 展开
protected $id;
protected $first_name;
protected $last_name;
protected $position;
protected $email;
protected $phone;
public function __construct($input=false) {
if(is_array($input)){
foreach ($input as $key => $val) {
$this->$key = $val;
}
}
}
一般做构造函数,都是用的普通模式,也就是类似
public function __construct($first_name, $last_name, $address, $phone_number, $boat_name, $reg_num, $boat_length, $boat_pic) {
$this->owner_id=null;
$this->first_name = $first_name;
$this->last_name = $last_name;
$this->address = $address;
}
第一种方法里,我个人理解,就是传进一个数组(其实数组便于管理,这点我是知道的), 然后使用了一个foreach 遍历数组,后面紧跟着$this->$key = $val;这是说把数组元素值赋值给了键名,那岂不是如果每个传进来的数组的元素值是不一样的,那这个键名也是变化的,怎么跟我这个类当中的类属性有关联?我不明白这么做的目的和好处,希望有高手帮个忙.谢谢 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询