Почему (если false возвращает «true») ... возвращает true? - PullRequest
3 голосов
/ 23 июля 2010

Внутри начала функции у меня есть это:

if(false);
{
    return 'TRUE';
}

возвращается «ИСТИНА»! Очевидно, что мое реальное использование - проверка более полезного выражения и возвращение чего-то еще. Я просто изменил это, чтобы уточнить мою точку зрения.

Почему это происходит? Разве вы не можете поместить возврат внутри оператора if? Я делаю это все время на других языках.

Например

вместо этого:

function () {
if(something)
{
//process stuff
}
}

, который требует переноса чего-либо внутри функции внутри if.

Я предпочитаю делать это:

function() {
if(!something)
return;
//process stuff
}

Разве это не нормально в PHP ... есть ли обход?

Ответы [ 2 ]

21 голосов
/ 23 июля 2010

Ты просто сумасшедший.:)

if(false); //   <----- remove semi colon
{
    return 'TRUE';
}

должно быть на одну точку с запятой меньше.

if(false)
{
    return 'TRUE';
}
8 голосов
/ 23 июля 2010

У вас есть лишняя точка с запятой после условия if.

...