yii\mongodb\QueryBuilder::findAndModify PHP Метод

findAndModify() публичный Метод

Generates 'find and modify' command.
public findAndModify ( string $collectionName, array $condition = [], array $update = [], array $options = [] ) : array
$collectionName string collection name
$condition array filter condition
$update array update criteria
$options array list of options in format: optionName => optionValue.
Результат array command document.
    public function findAndModify($collectionName, $condition = [], $update = [], $options = [])
    {
        $document = array_merge(['findAndModify' => $collectionName], $options);
        if (!empty($condition)) {
            $options['query'] = $this->buildCondition($condition);
        }
        if (!empty($update)) {
            $options['update'] = $update;
        }
        if (isset($options['fields'])) {
            $options['fields'] = $this->buildSelectFields($options['fields']);
        }
        if (isset($options['sort'])) {
            $options['sort'] = $this->buildSortFields($options['sort']);
        }
        foreach (['fields', 'query', 'sort', 'update'] as $name) {
            if (isset($options[$name])) {
                $document[$name] = (object) $options[$name];
            }
        }
        return $document;
    }