Условный PHP - Отображать только если строка имеет какое-либо значение? - PullRequest
0 голосов
/ 07 марта 2012

Мне нужно отобразить результаты одной или двух строк. Каждая строка содержит разделенный запятыми список элементов. Мне нужно объединить их в один список.

Я знаю, как сделать конкатенацию.

У меня проблема в том, что иногда вторая строка содержит записи, иногда - нет.

Если вторая строка содержит данные, я хочу отобразить объединенный результат (первая строка и вторая строка). Если вторая строка пуста, я хочу отобразить только первую строку.

Может кто-нибудь помочь мне понять, как этого добиться?

Ответы [ 2 ]

1 голос
/ 07 марта 2012

Зовите меня сумасшедшим, но ...

echo $string1;
if($string2 != '') {
  echo ', ', $string2;
}

должно быть достаточно?

1 голос
/ 07 марта 2012
$string1 = 'test1,test2';
$string2 = 'test3,test4';

if(isset($string2) && strlen($string2) > 0)
    echo($string1 . ',' . $string2);
else echo($string1);

$string2 = '';

if(isset($string2) && strlen($string2) > 0)
    echo($string1 . ',' . $string2)
else echo($string1);

Или, если вы хотите краткий оператор с троичным оператором:

$string1 = 'test1,test2';
$string2 = 'test3,test4';

echo $string1 . ($string2 ? ',' . $string2 : '');

unset($string2);

echo $string1 . ($string2 ? ',' . $string2 : '');
...