首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >理论2注释和Zend框架强调公约

理论2注释和Zend框架强调公约
EN

Stack Overflow用户
提问于 2010-08-31 22:37:21
回答 1查看 1.5K关注 0票数 4

我正在研究理论2 (Beta3)沙箱,并试图应用Zend编码约定,将一个领先的下划线放置到私有类成员。当我查询地址时,当它的私有成员未加标记时,我将按预期检索对象。当我添加下划线、重新生成和重新填充db,然后运行相同的查询时,我会得到以下错误消息:

PHP注意:未定义索引: id在.Doctrine/ORM/Internal/Hydration/AbstractHydrator.php在184号线

PHP致命错误:未命名的异常'Doctrine\DBAL\DBALException‘,消息’未知列类型请求‘。在..。原则/DBAL/DBALException.php:81

DQL查询:

代码语言:javascript
复制
$q = $em->createQuery('select u from Entities\Address u where u.id = ?1');
$q->setParameter(1, '1');
$address = $q->getSingleResult();

ZFed地址类:

代码语言:javascript
复制
<?php

namespace Entities;

/** @Entity @Table(name="addresses") */
class Address
{
    /**
     * @Id @Column(type="integer", length=11, name="id")
     * @GeneratedValue(strategy="AUTO")
     */
    private $_id;
    
    /** @Column(type="string", length=255, name="street") */
    private $_street;

    public function getId()
    {
        return $this->_id;
    }

    public function getStreet()
    {
        return $this->_street;
    }

    public function setStreet($street)
    {
        $this->_street = $street;
    }

}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-09-01 05:43:34

您必须在所有DQL查询之前写_是的。

变量前面的下划线是某种匈牙利符号,我们作为理论团队不喜欢。据我所知,即使Zend也会放弃新代码的样式。许多其他项目也是这样做的,PEAR2甚至在这方面改变了他们的标准。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3613719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档