构造函数在PHP中重载
发布时间:2020-12-13 18:23:07 所属栏目:PHP教程 来源:网络整理
导读:问题Approch 我有一个这样的类,有一个重载的构造函数 码 ?php /* Users Abstract Class*/abstract class User { protected $user_email; protected $user_username; protected $user_password; protected $registred_date; //Default constructor function U
问题Approch
我有一个这样的类,有一个重载的构造函数 码 <?php /* Users Abstract Class */ abstract class User { protected $user_email; protected $user_username; protected $user_password; protected $registred_date; //Default constructor function User() { } //overloded constructor function User($input_username,$input_email,$input_password) { __set($this->user_username,$input_username); __set($this->user_email,$user_password); __set($this->user_password,$input_password); } } ?> 问题细节 上面的代码提供了一个错误:错误:致命错误:无法重新声明User :: User() 正如其他语言如C和Java使用上述方法来重载构造函数如何在PHP OOP中执行它? 附加信息 我在LAMP *中使用* PHP 5.3.2,在这个版本中应完全支持OOP概念
PHP没有重载.它有一系列神奇的方法,在手册中被描述为重载(参见:
http://php.net/manual/en/language.oop5.overloading.php),但它并不是你想到的.
另外,在PHP 5中编写构造函数的正确方法是使用__construct方法: public function __construct(/* args */) { // constructor code } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |