gmdate () ожидает, что параметр 2 будет целочисленным, с плавающей запятой - PullRequest
1 голос
/ 01 июля 2019

Вот моя попытка

$final_expiry_date = gmdate("Y-m-d", $unix_date_exp);

Серьезность: Предупреждение

Сообщение: gmdate () ожидает, что параметр 2 является целым числом, с плавающей запятой

Имя файла: controllers / PermissionSettingController.php

Номер строки: 83

Здесь мой код enter image description here

Ответы [ 3 ]

1 голос
/ 01 июля 2019

Ошибка не требует пояснений:

целое число требуется в качестве второго параметра функции, но значение с плавающей запятой прошло.

Так что конвертируйте float в int, как показано ниже:

(int)$unix_date_exp

Или

ceil($unix_date_exp)

Или

floor($unix_date_exp)

Ссылки

Тип кастинга

CEIL

этаж ()

0 голосов
/ 01 июля 2019

Ваш $excel_date_exp (из которого вычисляется ваш $unix_date_exp) равен 0.0 (с плавающей запятой), вы передаете его функции, которая ожидает и является целочисленной. У вас есть 2 возможных варианта:

а) установите $excel_date_exp = 0 (int)

b) преобразовать его перед передачей в функцию: $final_expiry_date = gmdate("Y-m-d", (int)$unix_date_exp);

или $final_expiry_date = gmdate("Y-m-d", floor($unix_date_exp)); - поскольку ваши вычисления не добавят десятичных дробей.

0 голосов
/ 01 июля 2019

Вы можете присвоить floor или ceil для округления значения для $unix_date_exp.

$unix_date_exp = floor($unix_date_exp); // or ceil($unix_date_exp);

Поскольку gmdate ожидает, что значение будет целочисленным, но по вашим расчетным значениям оно будет float, поэтому вам необходимо округлить его до ближайшего integer, выполнив floor или ceil до значения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...