- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个返回 Doctrine_Collection 的方法,带有 whereIn()
子句:
public function getByValues($values)
{
if (!is_array($values))
throw new sfException('Wrong parameter type. Excepted array.');
return Doctrine_Query::create()
->from('Anomaly a')
->whereIn('a.value', $values);
}
但是,当 $values
为空数组时,此方法返回AnomalyTable 中的所有行。这不是意外行为,如 Doctrine 文档中所述,并写在这里:Doctrine where in with Doctrine_Query
但是,当 $values
是一个空数组时,我想返回一个空的 Doctrine_Collection
而不是我的查询结果。
关于如何做到这一点有什么想法吗?
谢谢 =)
添加一个不可能的子句,如 ->where('1=0')
可以解决问题,但这是对数据库服务器的不必要请求。有没有人有更好的主意?
最佳答案
然后呢(你还需要 execute 方法来获取查询结果!返回类型每次都是相同的):
public function getByValues($values)
{
if (!is_array($values))
throw new sfException('Wrong parameter type. Excepted array.');
if (empty($values)) {
return new Doctrine_Collection('Anomaly');
}
return Doctrine_Query::create()
->from('Anomaly a')
->whereIn('a.value', $values)
->execute()
;
}
关于php - 如何返回一个空的 Doctrine_Collection?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5550229/
我有一个返回 Doctrine_Collection 的方法,带有 whereIn() 子句: public function getByValues($values) { if (!is_arr
我正在寻找一种干净的方法来反转 Doctrine_Collection 的顺序。我知道这听起来很奇怪,所以让我解释一下我的(简单)目标:我需要显示 x 最新/最新 记录,但我必须以相反的顺序显示它:最
使用 Doctrine 1.2,我在从 Doctrine_Collection 中删除项目时遇到一些问题。 我有一个充满 transient Doctrine_Records 的 Doctrine 集
我在我的应用程序中遇到了一些问题,当我尝试以 $model->RelatedComponent[] = $child1.当然,这会产生如下异常: Doctrine_Exception: Add is
在 Doctrine 1.2 中,可以设置 Key Mapping对于一个表,该表创建的 Doctrine_Collection 对象将填充集合中每个记录中特定列的键。 上面链接的文档中的示例: Yo
我是一名优秀的程序员,十分优秀!