php Аргумент функции по умолчанию доставляет bool - PullRequest
0 голосов
/ 16 апреля 2020

Я использую структуру codeigniter 3. У меня есть проверка, которая вызывает функцию valid_date, которая требует 2 параметра. Первая - это введенная дата из формы (ничего особенного в этом нет). Второй формат даты. В общем, это dmY.

/**
  * Datum validatie
  * 
  * @param date, format
  * @return controle
  */
public function valid_date($date, $format = 'd-m-Y') 
{
  $d = DateTime::createFromFormat($format, $date);
  return $d && $d->format($format) === $date;
}

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

Поэтому, когда я проводил некоторый тест, формат обрабатывался как значение bool.

1 Ответ

0 голосов
/ 16 апреля 2020

Очевидно, что второй параметр заполняется CI_Form_validation как bool.

Итак, чтобы исправить эту проблему в codeigniter.

$this->form_validation->set_rules('aanvangDatum','Aanvangs datum','trim|min_length[10]|max_length[10]|valid_date[d-m-Y]');

Параметр - dmY между []

...