How do I hide several lines if php variable is empty?

依然范特西╮ 提交于 2019-12-23 18:50:09

问题


As a learner in PHP, I'm struggling to hide from displaying several lines, if a chosen variable is empty. I can get this to work on a basic level, but am lost when the content to be hidden gets more complicated. The concept I am aiming at is this:

<?php if (isset($g1)) { ?>
((This part should not display if variable $g1 is empty))
<?php } ?>

My code looks like this:

<?php if (isset($g1)) { ?>
<a href="img/g1.png"  class="lightbox"  rel="tooltip" data-original-title="<?php print $g1; ?>" data-plugin-options='{"type":"image"}'>
<img class="img-responsive img-rounded wbdr4" src="img/g1.png">
</a>
<?php } ?>

In the above, the tooltip does not display when variable g1 is empty, but the rest does. I'm new here so, I hope I've formatted my question correctly. Help appreciated.


回答1:


<?php if (isset($g1) && $g1!='') { ?>
<a href="img/g1.png"  class="lightbox"  rel="tooltip" data-original-title="<?php print $g1; ?>" data-plugin-options='{"type":"image"}'>
<img class="img-responsive img-rounded wbdr4" src="img/g1.png">
</a>
<?php } ?>



回答2:


Try this code:
<?php if (!empty($g1)) { ?>
((This part should not display if variable $g1 is empty))
<?php } ?>



回答3:


The isset() function checks if the variable has been set, even if to an empty string. There's the empty() function which checks if the variable is not set or set to empty string.

<?php
$x = '';
if (isset($x)) print('$x is set');
if (empty($x)) print('$x is not set or is empty');
if (isset($x) && empty($x)) print('$x is set and is empty');
if (!empty($x)) print('$x is set and not empty'); // won't emit warning if not set



回答4:


You can make use if empty() function:

<?php if (isset($g1) && !empty($g1)) { ?>
((This part should not display if variable $g1 is empty))
<?php } ?>

or

<?php if (isset($g1) && $g1 !== '') { ?>
((This part should not display if variable $g1 is empty))
<?php } ?>



回答5:


Here's my answer that seems to be going a totally different route than everyone else, which i have no idea why.

To do what OP wants, one way is to expand the php tag to include all.

<?php 
    if (isset($g1)) { 
        echo "<a href='img/g1.png'  class='lightbox'  rel='tooltip' data-original-title='".$g1."' data-plugin-options='{\"type\":\"image\"}'>";
        echo "<img class='img-responsive img-rounded wbdr4' src='img/g1.png'>";
        echo "</a>";
    } 
?>



回答6:


hiding something is pretty easy in php you can use it in several ways and here is how it would look like

<?php if(isset($g1) == ""): ?>
   //The $g1 is empty so anything here will be displayed
<?php else: ?>
   //The $g1 is NOT empty and anything here will be displayed
<?php endif; ?>


来源:https://stackoverflow.com/questions/24857646/how-do-i-hide-several-lines-if-php-variable-is-empty

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!