последовательный if's в PHP

Ответов: 10


4

Вы могли бы их сделать так:

if(cond1||
   cond2||
   cond3||
   cond4)
{
  return false;
}

3

Делая что-то подобное, называется оговоркой Хранителя. Он может быть улучшен, поэтому клаузулы, возвращающие одно и то же значение, должны быть сгруппированы вместе.

if ($this->email->isValid($email) || $this->username->isValid($username))
{
    return false;
}

Или как это, если их много (Кстати, как я форматирует if, это просто так, чтобы читать лучше, любой другой способ тоже должен быть прекрасен)

if (
    $this->email->isValid($email) || 
    $this->username->isValid($username) || 
    $this->somethingelse()
   )
{
    return false;
}

0

Если это данные из формы, взгляните на Zend_Form, как рекомендовано плакатом в другом вопросе

Я отправил некоторый пример кода, который детализирует добавление валидаторов для формирования элементов


0

Просто убедитесь, что вы положили наиболее очевидную валидацию наверху, поэтому, если она будет терпеть неудачу, она отключится, прежде чем она пройдет через каждое утверждение. Кроме того, мне не нравятся заявления без фигурных скобок, но тогда это только вопрос мнения.


0
if ($this->email->isValid($email) || 
    $this->username->isValid($username))
        return false;
PHP, OOP, включение заявление, если-заявление,
Похожие вопросы
Яндекс.Метрика