Php regex发布的Yi2 mongodb更新

Php regex发布的Yi2 mongodb更新,php,mongodb,yii2,Php,Mongodb,Yii2,我正在尝试按正则表达式条件更新数据。 调用此方法时,未更新任何内容: $collection->update( ['post_barelink' => ['$regex' => '.*shared.com' . $barelink . '$"']], [ 'ga_bounceRate' => isset($row[1]) ? $row[1] : 0, 'ga_avgSessionDuration' => isset($

我正在尝试按正则表达式条件更新数据。 调用此方法时,未更新任何内容:

$collection->update(
    ['post_barelink' => ['$regex' => '.*shared.com' . $barelink . '$"']],
    [
        'ga_bounceRate' => isset($row[1]) ? $row[1] : 0,
        'ga_avgSessionDuration' => isset($row[2]) ? $row[2] : 0,
        'ga_pageviewsPerSession' => isset($row[3]) ? $row[3] : 0,
     ]);
但是当我使用

$collection->find(['post_barelink' => ['$regex' => '.*shared.com' . $barelink . '$']])->toArray();
我从DB那里得到一些结果


如何设置update方法的条件以获得与find()相同的结果?使用MongoRegex类定义regex条件

参考-

在更新函数中,最后一个参数可用于设置更新选项,例如:

['multi'=>true,'upsert'=>false]

使用multi:true,我不知道它在PHP上是如何实现的,但您需要它:)是的,谢谢),但它没有解决主要问题。无论如何,我已经找到了在更新方法中不使用正则表达式的解决方案
['multi'=>true,'upsert'=>false]