Как проверить Дату MySQL в PHP?

Вы не должны изменять параметр input_length для каждого предложения, вам нужно определить константу MAXIMUM_SENTENCE_LENGTH, где вы будете дополнять все свои предложения специальным значением 0, если они меньше этой максимальной длины, или просто вырезать от чрезмерных слов, если они превосходят его.

Затем вы должны использовать параметр mask_zero, установив его в True, чтобы просто маскировать эти избыточные 0 токенов, чтобы они не влияли на выходные данные модели или обратное распространение градиентов во время обучения.

Проверьте этот учебник для более подробной информации.

8
задан gpojd 28 February 2009 в 04:08
поделиться

3 ответа

Если им отдельные 3 года, выпадает, необходимо будет проверить их как три отдельных значения.

Т.е.,

  • Проверьте это, столбец года является числовым, и между любыми годами допустимы в Вашем приложении
  • Проверьте это, столбец месяца является числовым
  • Проверьте это, дневной столбец является числовым
  • Проверьте это, они - все допустимые значения с помощью checkdate ()

Или, Вы могли просто бросить их всех к целому числу, объединить их вместе в дату и видеть, допустима ли получающаяся дата. Т.е.,

$time = mktime(0, 0, 0, (int)$_POST['month'], (int)$_POST['day'], (int)$_POST['year']);

// in this example, valid values are between jan 1 2000 (server time) and now
// modify as required
if ($time < mktime(0, 0, 0, 1, 1, 2000) || $time > time())
  return 'Invalid!';

$mysqltime = date('Y-m-d', $time);

// now insert $mysqltime into database

Оборотная сторона к этому методу - то, что он будет только работать с датами в диапазоне метки времени Unix т.е. 1970 - 2038 или около этого.

6
ответ дан 5 December 2019 в 05:34
поделиться

Можно проверить, что дата является допустимым использованием checkdate. Если Вы хотите удостовериться, что значения являются числовыми и корректная длина, Вы могли сделать что-то столь же простое как is_int ctype_digit и strlen комбинация перед созданием даты.

// untested
if( !ctype_digit)( $month ) || strlen( $month ) != 2 ) {
    // handle error
}
// repeat for $day and $year
if ( checkdate( $month, $day, $year ) {
    // do your work
}
2
ответ дан 5 December 2019 в 05:34
поделиться

Если Вы имеете три, выпадает затем, значения, прибывающие из раскрытия, должны всегда быть числами, так как Вы управляете значениями, связанными с месяцем (показанный ниже). Это затем привело бы к заключению, что объединенный результат допустим.

<option value="01">January</option>

Если Вы обеспечиваете, обеспечивают записи помощи в холмах отбрасывания, таких как "Выбор Месяц", затем можно сделать то значение 0 и удостовериться, что значения, прибывающие из каждого поля отбрасывания, больше, чем нуль.

Существует возможность, что кто-то изменит HTML-форму для обеспечения других значений. Если это - беспокойство затем, можно использовать функцию PHP ctype_digit (), чтобы проверить, что каждое обеспеченное значение является на самом деле числовой цифрой.

Если Ваше беспокойство - то, что дата на самом деле допустима использование checkdate () функция.

-1
ответ дан 5 December 2019 в 05:34
поделиться