2016-02-14 23 views
2

我已經填補了MongoDB的收集與下面的值(IDENTIFER = myvar):

array (size=10) 
    0 => string 'B00LHILHS8' (length=10) 
    1 => string 'B00WSCCMV8' (length=10) 
    2 => string 'B00MA15OK8' (length=10) 

但是 - 通緝findBy(['myvar' => 'B00LHILHS8'])返回文檔。但是findBy(['myvar' => ['B00LHILHS8', 'B00WSCCMV8']])返回empty結果。

我不確定,如果這是正確的。正如Doctrine Manual - Working with objects - By Simple Conditions提到的那樣,應該可以爲findBy()方法傳遞一個數組。

我應該使用查詢生成器嗎?

+0

MYVAR是一個標籤和B00LHILHS8是一個值? – Cuchu

+0

@Cuchu - 是的。我有一個有幾個字段的文件,而'myvar'就是其中之一。 – Roman

回答

2

使用原則,MongoDB的-ODM與條件運算 [link]

嘗試:

$qb = $dm->createQueryBuilder('Entity') 
    ->field('myvar')->in(array('B00LHILHS8', 'B00WSCCMV8')); 
+0

我使用教條,但與MySQL和MongoDB與PHP API。 – Cuchu

+0

然後$ query = $ qb-> getQuery(); $ result = $ query-> execute(); – Cuchu

+0

謝謝,使用'QueryBuilder'幫助我 - 但問題是,findBy()似乎不適用於Doctrine和MongoDB。與MySQL它確實。 – Roman

相關問題