Проблема с !empty

196
14 июля 2018, 14:50

У меня есть данный код:

$text = $attr['something'];
if (!empty($text)){
  echo ''; // ничего не выводит
} else {
  echo '<li>'.$attr['something'].'</li>';
}
$output = $text;

Код работает, если поле с атрибутом ['something'] пустое, то он ничего не выводит
Но если я ввожу туда просто текст, он выведет его, но уже без li элемента.
В чем может быть проблема?
Другими словами мне нужно чтобы если значение $attr['something'] было пустое, то не выводить ничего, а если там хоть что-то написано, то вывести то что написано внутри li элемента
С php познакомился не так давно, буду благодарен за любую помощь

p.s я понял почему $output выводится без li элемента, потому что он просто выводит то что написано в $attr['something'], но я по прежнему не понимаю как вывести html код если значение не пустует

Answer 1

Ну во первых:

...если значение $attr['something'] было пустое, то не выводить ничего...

if (!empty($text)){
  echo ''; // ничего не выводит
}

Как-то на реалии не похоже, надо убрать !.

Во вторых:

Как вы определили что у вас <li> не выводится? в браузере? посмотрите исходный код страницы. Если вам нужно прям на экране увидеть <li> то http://php.net/manual/ru/function.htmlspecialchars.php

В третьих:

Так что вы хотите в $output - видеть результат для вывода? тогда так:

$text = $attr['something'];
if (empty($text)){
   $output = ''; // ничего не выводит
} else {
  $output = '<li>'.$attr['something'].'</li>';
}
echo $output;
READ ALSO
Помощь в разборке массива

Помощь в разборке массива

Есть такой массив -

246
str_replace php

str_replace php

Как сделать замену по шаблону: слово: и 3 цифры

177
Не изменяются данные в БД Mysql

Не изменяются данные в БД Mysql

У меня небольшая проблемкаМне нужно изменить конкретное поле из выборки бд(Mysql)

191
Как получить нужный id из запроса?

Как получить нужный id из запроса?

Сделал я значит поиск, но id выводиться только из таблицы events, а мне нужно еще получать id из таблицы blogИ сделать условие, для передачи ссылки...

180