ManaPHP\Mvc\Model::exists PHP Метод

exists() публичный статический Метод

public static exists ( string | array $parameters = null, integer | array $cacheOptions = null ) : boolean
$parameters string | array
$cacheOptions integer | array
Результат boolean
    public static function exists($parameters = null, $cacheOptions = null)
    {
        $dependencyInjector = Di::getDefault();
        $modelsManager = $dependencyInjector->getShared('modelsManager');
        if (is_numeric($parameters)) {
            $modelsMetadata = $dependencyInjector->getShared('modelsMetadata');
            $primaryKeys = $modelsMetadata->getPrimaryKeyAttributes(get_called_class());
            if (count($primaryKeys) !== 1) {
                throw new ModelException('parameter is integer, but the primary key of `:model` model has more than one column', ['model' => get_called_class()]);
            }
            $parameters = [$primaryKeys[0] => $parameters];
        } elseif (is_string($parameters)) {
            $parameters = [$parameters];
        }
        $modelName = get_called_class();
        /**
         * @var $modelsManager \ManaPHP\Mvc\Model\Manager
         */
        $builder = $modelsManager->createBuilder($parameters)->columns('1 as stub')->from($modelName)->limit(1);
        $resultset = $builder->execute($cacheOptions);
        return isset($resultset[0]);
    }