Как правильно прописать такую проверку в Yii2?

В Yii2, для выполнения проверок, рекомендуется использовать механизм правил валидации моделей. Правила валидации определены в методе rules() соответствующей модели.

Существует несколько способов прописать проверку, в зависимости от вашей конкретной задачи. Один из вариантов – использование правила match.

Предположим, что вы хотите проверить, что поле email содержит корректный email-адрес. Для этого можете добавить следующее правило в метод rules() вашей модели:

public function rules()
{
    return [
        ...

        [['email'], 'required'], // Обязательное поле
        [['email'], 'string', 'max' => 255], // Максимальная длина поля
        [['email'], 'email'], // Проверка на формат email-адреса

        ...
    ];
}

В приведенном примере мы использовали правило email, которое проверяет, что значение поля является корректным email-адресом. Если значение не соответствует формату email, модель будет считаться невалидной, и вы можете уведомить пользователя о необходимости исправить ошибку.

Также в правилах указаны правила required и string, которые указывают на обязательность поля и максимальную длину соответственно. Вы можете добавить другие правила по необходимости.

После того, как вы определили правила валидации, вы можете вызывать метод validate() вашей модели, чтобы проверить, соответствуют ли данные правилам:

$model = new YourModel();
$model->email = '[email protected]';

if ($model->validate()) {
    // Данные прошли проверку
} else {
    // Данные содержат ошибки и не прошли проверку
    $errors = $model->errors;
}

Если данные проходят проверку всех правил, метод validate() вернет true. В противном случае, если данные содержат ошибки и не проходят проверку, метод validate() вернет false, а вы можете получить список ошибок, вызвав свойство $errors.