如何在php上打印非空值

时间:2013-07-17 05:56:17

标签: php

我是PHP的新手,现在我正在尝试打印非空值。我有以下PHP代码,它抛出所有值,包括null和非nulls。在我的网站中,我只需要空值。

 
        <tr>
           <td><?php echo $stock['stsymbol']?><td>
           <td><?php echo $stock['noshares']?><td>
            <td><?php echo $stock['purchaseprice']?><td>
             <td><?php echo $stock['datepurchased']?><td>
              <td><?php echo $stock['Original Value']?><td>

             <td><?php echo $stock['Current Price']?><td>
             <td><?php echo $stock['Current Value']?><td>
        </tr>


    <?php } // end foreach ?>

5 个答案:

答案 0 :(得分:2)

像这个例子一样更改所有td:

<?php if(!is_null($stock['stsymbol'])){ ?>
    <td><?php echo $stock['stsymbol']; ?><td>
<?php } ?>

答案 1 :(得分:1)

try using this

<td><?php if(!empty($stock['stsymbol'])){ echo $stock['stsymbol']; }?><td>

答案 2 :(得分:0)

要有条件地打印值的基本模式是

  <?php 
      if (!empty($stock['stsymbol'])) {
             echo $stock['stsymbol'];
      }
  ?>

使用三元if

可以缩短这一点
  <?php echo (!empty($stock["stsymbol"]))?$stock["stsymbol"]:"" ?>

<强>更新

关于用于测试空值的机制的评论中已经进行了很多讨论。我认为回顾每一个的优点可能会很好。

  

is_null - 如果变量严格为null或未定义,则返回true(如果未定义,将发出通知)

     

为空 - 如果变量是假的或未定义的,则返回true(不会发出通知)

     

!$ val - 与空相同但带有未定义值的通知。

答案 3 :(得分:0)

对于这样的情况,php有is_null。使用

if (!is_null($varname)) echo $varname;

答案 4 :(得分:-1)

您可以完全避免此问题,并在当前的foreach中使用另一个foreach 循环。

它是这样的:

foreach ($stock as $key=>$value) {
    echo "<td>$value</td>";
}