Loading...
PHP/MySQL | Нифига не понял я
Функция примерно вот такого вида


<?php
function a($a) {
if ($a) {
return $a;
}
}


при var_damp() возвращается NULL

раз мы знаем, что у нас вернётся NULL, то проверяем на isset(), чтобы не потерять NULL и вернуть его


<?php
function a($a) {
if (isset($a)) {// если у нас тут NULL, то условие не должно сработать
return $a;
}
return NULL;// должно сработать это условие, потому что у нас NULL
}


при var_damp() возвращается string(0) - пустая строка

то есть сработало условие isset()

isset() не должно пропустить NULL

чё за хрень? :-D
________
посл. ред. 28.05.2019 в 11:22; всего 1 раз(а); by Вероломство
По сути да
Kemel (28.05.2019 в 11:32)
По сути да



<?php
function a($a) {
if ($a) {// вот тут у нас NULL
return $a;
}
// и вот тут у нас NULL
}


то есть при любом раскладе возвращается NULL

но если поставить условие isset(), то пустая строка, а не NULL :-D
Вероломство, проверь сам входящий аргумент как он приходить в функцию

function a($a) {

echo $a;

if ($a) {// вот тут у нас NULL
return $a;
}
// и вот тут у нас NULL
}
Вероломство,
if ($a) { тут не может быть null или false
Проблема в return null в конце функции
________
посл. ред. 28.05.2019 в 12:05; всего 1 раз(а); by SayrusCraft
SayrusCraft (28.05.2019 в 12:04)
Проблема в return null в конце функции


мне вот так подойдёт


<?php
function a($a) {
if ($a) {
return $a;
}
}


но мне нужно именно вернуть NULL иначе IDE ругается, что в функции нет return

короче написал так


<?php
function a($a) {
if ($a) {
return $a;
}
return null;
}
Avenax (28.05.2019 в 11:51)
Вероломство,
if ($a) { тут не может быть null или false


я уже догнал: пустую строку isset() пропустит и вернёт, потому что у меня пустота не булев NULL
Вероломство,
А если так?
<?php
function a($a = null)
{
// прочие условия...

return $a;
}
SayrusCraft (28.05.2019 в 12:14)
Вероломство,
А если так?
<?php
function a($a = null)
{
// прочие условия...

return $a;
}


можно и так, но мне не подойдёт такой варик, у меня есть потом проверка на isset() в другом методе и эта функция не вернёт NULL туда и проверка не сработает

потому что $a при передаче у меня никогда не будет NULL, она минимум будет ''
________
посл. ред. 28.05.2019 в 12:19; всего 1 раз(а); by Вероломство
Онлайн: 1
Время:
Gen. 0.1044
(c) Bym.Guru 2010-2025