[英]how can i pass integer variable inside where clause in doctrines querybuilder
我是新的ORM理論。 我將Codeigniter框架與學說一起使用時出現此錯誤
A PHP Error was encountered
Severity: Warning
Message: get_class() expects parameter 1 to be object, integer given
Filename: Expr/Base.php
Line Number: 92
當我嘗試在模型函數中插入整數變量作為參數時
public function selectsingle($id){
$qb = $this->em->createQueryBuilder();
$query = $qb->select('p.name', 'p.email', 'p.subject', 'p.message')
->from('PdContact', 'p')
->where('p.id', $id);
$result = $query->getQuery()->getResult();
echo "<pre>";
print_r($result);
exit;
}
我如何將任何整數傳遞給where子句。
添加->setParameter("id", $id)
並將where子句更改為->where('p.id = :id')
之后,我得到了解決方案
public function selectsingle($id){
$qb = $this->em->createQueryBuilder();
$query = $qb->select('p.name', 'p.email', 'p.subject', 'p.message')
->from('PdContact', 'p')
->where('p.id = :id')
->setParameter("id", $id);
return $result = $query->getQuery()->getResult();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.