PHP – Если переменная не пуста, echo html-код

Я хотел бы отобразить некоторый код html, если переменная не пуста, иначе я бы ничего не показывал.

Я пробовал этот код, но не работает:

<?php $web = the_field('website'); if (isset($web)) { ?> <span class="field-label">Website: </span><a href="http://<?php the_field('website'); ?>" target="_blank"><?php the_field('website'); ?></a> <?php } else { echo "Niente"; } ?> 

Related of "PHP – Если переменная не пуста, echo html-код"

 if (!empty($web)) { ?> <span class="field-label">Website: </span><a href="http://<?php the_field('website'); ?>" target="_blank"><?php the_field('website'); ?></a> <?php } else { echo "Niente";} 

http://us.php.net/manual/en/function.empty.php

isset вернет true, даже если переменная «". isset возвращает false, только если переменная имеет значение null . Что вы должны делать:

 if (!empty($web)) { // foo } 

Это проверит, что переменная не пуста.

Надеюсь это поможет

Просто используйте if ($web) . Это true если переменная имеет какое-либо правдоподобное значение.

Вам не нужен isset или empty поскольку вы знаете, что переменная существует, поскольку вы только что установили ее в предыдущей строке.

 if(!empty($web)) { echo 'Something'; } 
 if($var !== '' && $var !== NULL) { echo $var; } 

Вы используете isset , то, что isset делает, проверяет, установлена ​​ли переменная («существует») и не является NULL . То, что вы ищете, empty , которое проверяет, является ли переменная пустой или нет, даже если она установлена. Чтобы проверить, что пусто, а что нет, посмотрите:

http://php.net/manual/en/function.empty.php

Также проверьте http://php.net/manual/en/function.isset.php то, что делает isset точно, поэтому вы понимаете, почему он не делает то, что вы ожидаете от него.

Ваша проблема заключается в использовании поля the_field() , которое предназначено для дополнительных пользовательских полей, плагина wordpress.

Если вы хотите использовать поле в переменной, вы должны использовать это: $web = get_field('website'); ,

Я надеюсь, что это тоже сработает, попробуйте использовать «is_null»,

 <?php $web = the_field('website'); if (!is_null($web)) { ?> ....html code here <?php } else { echo "Niente"; } ?> 

http://php.net/manual/en/function.is-null.php

надеюсь, что вам подходит ..

Кажется, люди немного усложняют это. Вернемся к исходному вопросу: « … если переменная не пуста, эхо-код html». «Я хотел бы отобразить некоторый код html, если переменная не пуста, иначе я бы ничего не показывал ».

Простой способ:

 <?php if (!empty($var)) echo "Some Html Code Here"; ?> 

Если ваша переменная не пуста, будет отображаться «Некоторый код HTML здесь». Если он пуст, ничего не произойдет.