Размещено: 2023-12-14 02:52:46

Теги: php

ПРИСВАИВАНИЯ В УСЛОВИЯХ

Иногда нет смысла создавать какие-то дополнительные новые переменные, а просто в самом условии присвоить значение. Использовать такой код удобно, когда переменная, определенная в условии, будет использоваться внутри конструкции if. Тут обязательно нужно помнить, что такое не работает без возведения присваивания в скобочки.

function f1($a)
{
    if($a<4)
    {
        return $a*2;
    }
    else
    {
        return false;
    }
}


function work()
{
    foreach(range(0,10) as $num)
    {
        echo 'foreach_'.$num.':<br>';
        
        //if($b=f1($num)===false) - условие без дополнительных скобочек - не работает
        if(($b=f1($num))===false) 
        {
            return false;
        }
        else
        {
            echo $b.'<br>';
        }
    }
}

work();

Этот пример выводит:

foreach_0:
0
foreach_1:
2
foreach_2:
4
foreach_3:
6
foreach_4:

Вложенная функция выводит false при передаваемом в нее значении больше 4, и она выдавая false останавливает родительскую функцию work.


На эту страницу чаще всего попадают по запросам: присваивания в условиях, равно в if, одно =