jjzjj

Construct

全部标签

php - __construct 的可见性

如果我有:abstractclassAbstractSingleton{protectedstatic$instance;publicstaticfunction&getInstance(){if(null===static::$instance)static::$instance=newstatic();returnstatic::$instance;}protectedfunction__construct(){}}扩展类的用户是否可以重新定义__construct的可见性?classSingletonextendsAbstractSingleton{publicfunction_

php - Zend 框架 : How to construct a simple "Data Mapper" model?

我正在ZendFramework中构建一个应用程序,但我想实现一个“DataMapper”样式的ORM层,构建仅包含表示领域概念所需的特定数据片段的模型类(无论这些字段恰好属于哪些表)。由于我的数据库结构是高度规范化的,因此从ActiveRecordORM中获得的好处是肤浅的。那么您将如何在ZendFramework中实现一个非常简单、直接的数据映射器ORM层? 最佳答案 我相信还没有真正的PHP的“DataMapper”风格的ORM。如果您想要一个真正的“数据映射器”,我认为您可能不走运。PHP中有2个流行的ORM,Propel和

具有可变数量参数的 PHP 工厂类

我要制作一个(某种)工厂类,它接受可变数量的参数并将它们传递给它将要调用的类a=$a;$this->b=$b;$this->c=$c;}}classB{private$foo;publicfunction__construct(){$args=func_get_args();$this->foo=call_user_func_array(array('A','__construct'),$args);}publicfunctiongetObject(){return$this->foo;}}$b=newB(10,20,30);var_dump($b->getObject());//sh

php - Codeigniter 2 index 和 __construct 之间的区别以及在 __construct 中放置的内容

什么时候调用__construct,什么时候调用index?还有其他区别吗?__construct中要放什么?最好的做法是什么,我应该调用$this->load电话......?还有什么?classSiteextendsCI_Controller{publicfunction__construct(){parent::__construct();echo'HelloWorld2';}publicfunctionindex(){echo'HelloWorld1';}} 最佳答案 __construct()先被调用,然后根据URL调用i

php - 在php继承中执行__constructor()

在php中,如果A扩展B,B的_constrctor()会在A实例化时自动执行吗?还是我必须调用parent->_constructor()? 最佳答案 PHP寻找它能找到的最顶层(最接近实例化类)__construct方法。然后它只执行那个。ClassA{publicfunction__construct(){echo"FromA";}}ClassBextendsA{publicfunction__construct(){echo"FromB";}}ClassCextendsA{}ClassDextendsB{}ClassEext

php - 为什么不调用父构造函数?

我将parent::__construct();添加到表和书签的构造函数中,以便让这段代码正常工作。为什么不自动调用它们?如果我创建一个书签类型的对象$obj_ref_bo=newbookmark();不应该书签也从它的每个父类(除了抽象类)创建对象。调用链是bookmark->table->database(abstract)->single_connect/*single_connect*/classsingle_connect{protectedstatic$_db_pointer=NULL;privatefunction__construct(){$this->_db_poin

php - PDO 使用 PDO::FETCH_PROPS_LATE 和 __construct() 调用?

我正在尝试创建一个新的Setting对象实例,调用__construct()方法,使用PHPPDO并约束PDO::FETCH_PROPS_LATE。不幸的是,我收到此警告(并且绑定(bind)不起作用)。如何将列值传递给构造方法?Warning:Missingargument1forSetting::__construct()inpdo.php.Notice:Undefinedvariable:keyinpdo.php.classSetting{protected$key,$value,$displayable;publicfunction__construct($key,$value

php - Smarty 异常 : "Please use parent::__construct() to call parent constructor"

我正在学习教程,在设置完所有内容后我得到:Fatalerror:Uncaughtexception'SmartyException'withmessage'Pleaseuseparent::__construct()tocallparentconstuctor'这是我的配置文件:我的目录结构是:mydomain.com/test/includemydomain.com/test/libsmydomain.com/test/presentation我该如何修复这个错误? 最佳答案 这意味着有一个扩展Smarty类的类正在使用__con

php - 扩展类是否有 __construct() 等价物

我有一个父类:AbstractClassBase{function__construct($registry){//stuff}}然后我至少有2个扩展该类的类classCmsextendsBase{//afewfunctionshere}还有这个classIndexextendsBase{//afewfunctionshere}对于CMS类,用户需要登录。session已经启动,我想使用session变量检查用户是否登录。所以我想做的是:classCmsextendsBase{function__construct(){//checktheusersessionisvalid}//af

php - 我可以在 PHP 中重载方法吗?

例子:我想要两个不同的构造函数,我不想使用func_get_arg(),因为这样就看不到可能的参数。写其中两个是否合法,例如:classMyClass{publicfunction__construct(){//dosomething}publicfunction__construct(array$arg){//dosomething}}? 最佳答案 不,但你可以这样做:classMyClass{publicfunction__construct($arg=null){if(is_array($arg)){//dosomething