Задать вопрос
mrusklon
@mrusklon
Не получается? Яростно гугли!

Как переписать код в более простой и понятный вид?

есть такой отрывок кода
foreach ($result as $i) {
                    if ($i['name'] == $name && $i['date'] == $day && print("<td>{$i['sub_hours']}</td>"))
                        continue 2;
                }

не пойму как переписать код внутри if чтоб он был "по обычному" написан ))
  • Вопрос задан
  • 143 просмотра
Подписаться 1 Простой 2 комментария
Решения вопроса 1
Ну допустим, вот так переписать.

foreach ($any as $result) {
    foreach ($result as $i) {
        if (isCheck($i, $name, $day)) {
            print("<td>{$i['sub_hours']}</td>");

            continue 2;
        }
    }
}

/**
 * Проверка условия 
 * 
 * @param $itm
 * @param $name
 * @param $day
 *
 * @return bool
 */
function isCheck($itm, $name, $day)
{
    if ($itm['name'] != $name) {
        return false;
    }

    return ($itm['date'] == $day);
}
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Как переписать код в более простой и понятный вид?

Не использовать функции вывода или функции меняющие состояние внутри выражения условия.

И уж тем более не делать это в условиях с 'ленивыми' логическими операторами.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы