如果函数为空,则隐藏DIV

时间:2018-07-29 19:54:37

标签: php function if-statement null

假设我有以下代码,如果函数为空,如何隐藏DIV?

类似地,如果函数为空,如何显示另一个DIV?

break

这是我的功能,仅供参考(它在wordpress中返回分类法的术语元字段):

continue

4 个答案:

答案 0 :(得分:0)

检查函数是否返回某些内容,然后显示div:

<?php
$name = name5();

if ($name) {
?>
    <div class='box12'>
        <h1>text</h1>
        <p><?php echo htmlentities($name); ?></p>
    </div>
<?php
}
?>

我还清理了您的h1和p结尾标签。包含htmlentities调用是为了避免有人可以在其名称中插入HTML标记并通过它们执行javascript等问题。

要显示不同的消息div,可以使用else(或如果结果只为空则只显示div,则可以使用!$name):

<?php
$name = name5();

if ($name) {
?>
    ...
<?php
} else {
?>
    <div>shown if empty</div>
<?php
}
?>

答案 1 :(得分:0)

服务器代码必须为客户端JavaScript代码吐出一些东西。更改您的代码:

<p><?php echo name5(); ?><p/>

类似于:

<p>
<?php if (!name5()){ ?>
<script>
$(".box12").hide(); // asuming you are using jQuery
</script>
<?php } ?>
<p/>

答案 2 :(得分:0)

使用IF语句包装函数的返回结果

<?php
$result = name5();
if ($result && $result !== '') { ?>
<div class='box12'>
    <h1>text<h1/>
    <p><?php echo $result ?><p/>
</div>
<?php } ?>

答案 3 :(得分:-2)

您可以尝试这些方法。

 1-
    <div class="box12">
      <h1>text</h1>
      <?php if(function_exists('name5')) { ?> 
        <p><?php echo name5(); ?></p>
      <?php } ?>
    </div>

    2-
    <div class="box12">
      <h1>text</h1>
      <?php if(name5()) { ?> 
        <p><?php echo name5(); ?></p>
      <?php } ?>
    </div>

    3-
    <div class="box12">
      <h1>text</h1>
        <?php $css = (name5()) ? "block":"none"; ?>
        <p style="display:<?=$css?>" >
          <?php echo name5(); ?>
        </p>
    </div>
相关问题