@Krivetko83

Превращение int в boolean при return из функции класса?

Здравствуйте: Всю голову себе сломал, подскажите куда копать:
Есть такая строка в коде методе (функции) класса AUTH, она вызывает метод другого класса (SUPER_CLASS) и получает результат выполнения метода (индекс записи добавленной в БД):
$id =0;
$id = $this->ion_auth->register($identity, $password, $email, $additional_data,$group);
var_dump($id);

var_dump($id); пишет bool(false)

Но если смотреть в методе $this->ion_auth->register то:

if (isset($id)) {
            var_dump($id);
            return $id;
        } else {
            return 0;
        }


var_dump($id); пишет int(199)

5f7c5dab39cc5948752292.png
PHP версии 7.4
Тип возвращаемого значения при объявлении функции задал int
В связи с этим у меня вопрос, где я теряю переменную? Куда она пропадает при return??
Заранее спасибо!
  • Вопрос задан
  • 94 просмотра
Пригласить эксперта
Ответы на вопрос 1
@Vitsliputsli
if (isset($id)) {
            var_dump($id);
            return $id;
        } else {
            return 0;
        }

если $id выше этого кода получит значение false, то return вернет false, как у вас и получилось.
А вообще, приведите код, а то можно только гадать.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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