Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Doctrine 在教义中设置属性的正确方法?_Doctrine - Fatal编程技术网

Doctrine 在教义中设置属性的正确方法?

Doctrine 在教义中设置属性的正确方法?,doctrine,Doctrine,在某些教程中,它们会告诉您设置如下属性: $manager = Doctrine_Manager::getInstance(); Doctrine_Manager::getInstance()->setAttribute( Doctrine::ATTR_AUTO_ACCESSOR_OVERRIDE, true); 在文档中,它向您展示了: $manager = Doctrine_Manager::getInstance(); $manager->setAttribute(

在某些教程中,它们会告诉您设置如下属性:

$manager = Doctrine_Manager::getInstance();
Doctrine_Manager::getInstance()->setAttribute(
    Doctrine::ATTR_AUTO_ACCESSOR_OVERRIDE, true);
在文档中,它向您展示了:

$manager = Doctrine_Manager::getInstance();
$manager->setAttribute(
    Doctrine::ATTR_AUTO_ACCESSOR_OVERRIDE, true);

我不知道该用哪一种?不是后一种吗?原因如何在第一个类中为单例类设置属性?第二个不是更正确吗?

您是否理解正在查看的代码

第一个代码是“错误的”。首先,它分配
Doctrine\u Manager
对象
$managger
,然后不使用此变量

如果您想在
Doctrine\u Manager
上做不止一件事,那么将此引用分配给不会弄乱代码的内容是很自然的。如果只想做一件事,则无需使用额外变量,换句话说:

Doctrine_Manger::getInstance()->setAttribte(...);

$manager = Doctrine_Manger::getInstance();
$manager->setAttribute(...);
$manager->setAttribute(...);
$manager->doSth();
$manager->blahblahblah();