Вопрос синтаксиса PHP - PullRequest
       10

Вопрос синтаксиса PHP

2 голосов
/ 29 октября 2009

Я нашел эту строку кода, и я пытаюсь понять, что он делает. Часть, с которой я не знаком, это знак вопроса и двоеточие. Для чего используются эти символы?

$string = $array[1] . ($array[0] === 47 ? '' : ' word');

Ответы [ 2 ]

5 голосов
/ 29 октября 2009

Это троичный оператор; в основном условное сокращение.

Это так же, как:

$string = $array[1];

if ($array[0] !== 47)
    $string .= ' word';

См. этот раздел руководства по PHP (раздел "Тернарный оператор").

0 голосов
/ 29 октября 2009

Это троичный оператор.

Вот ссылка на учебник

Это работает как-то так:

function tern()

    if ($array[0] === 47)
    {
        return '';
    }
    else
    {
        return 'word';
    }
}
...