嘿伙计们,我想通过$or -Operator 搜索文档...起初我要插入 3 个文档:
$aDocument = array(
'id' => 1,
'name' => 'WinZIP',
'shorttext' => 'ZIP / UNZIP Programm' );
$oCollection->insert( $aDocument );
$aDocument = array(
'id' => 2,
'name' => 'WinRar',
'shorttext' => 'ZIP / UNZIP Programm mit RAR-Unterstützung' );
$oCollection->insert( $aDocument );
$aDocument = array(
'id' => 3,
'name' => '7zip',
'shorttext' => 'ZIP / UNZIP Programm mit RAR- und 7z-Unterstützung' );
$oCollection->insert( $aDocument );
然后我为我的查询创建一个正则表达式:
$oSearchRegex = new MongoRegex( "/zip/i" );
现在我想在 'name' 或 'shorttext' 中搜索字符串 'zip'... 应该是这样的:
$oCursor = $oCollection->find( array( '$or' => array( array( 'name' => $oSearchRegex ), array( 'shorttext' => $oSearchRegex ) ) ) );
但这不起作用......当我只在一个索引中搜索时,它工作得非常好......示例:
$oCursor = $oCollection->find( array( 'name' => $oSearchRegex ) );
有什么解决办法吗?