【问题标题】:PHP - if statement echo's nothing if nullPHP - 如果语句回显为空,则什么都没有
【发布时间】:2011-10-05 07:22:09
【问题描述】:

我有一个显示工作列表的脚本,如果特定类别中没有列表,它当前显示“(0)”。如果没有列表,我希望它不显示任何内容,如果有,则显示实际计数。如果可能,我还需要将括号带入语句中,因此如果值为“0”,则不会显示它们。我玩过一点 php,但这超出了我的基本知识。

这是当前存在的行,我挖掘了一下并尝试实现我在 PHP 手册中找到的一些想法,但无济于事。我希望这是关于他声明的足够信息。

(<?php echo $sub->assignedcareers != null ? $sub->assignedcareers : 0; ?>)

提前致谢!

【问题讨论】:

    标签: php if-statement null echo


    【解决方案1】:

    假设assignedcareers是一个数组,你可以使用count来统计其中的元素个数。

    如果数组不为空,则此修改后的语句将打印计数,否则不执行任何操作。它还会在括号内打印计数。

    <?php 
      if( $sub->assignedcareers != null )
      {
        echo "(" . count($sub->assignedcareers) . ")";
      }
    ?>
    

    【讨论】:

    • 这几乎奏效了,但所有类别是否为空都回显了一个“1”,感谢您的快速回复。
    • 有道理,因为我的印象是 assignedcareers 是一个数组,但听起来它实际上是一个 int,所以 count() 总是返回 1,因为它提供了一个元素.因此,deceze 的解决方案是正确的。 :)
    【解决方案2】:
    if ($sub->assignedcareers) {
        echo "($sub->assignedcareers)";
    }
    

    【讨论】:

    • 太棒了!,措辞魅力谢谢。
    猜你喜欢
    • 2022-11-25
    • 1970-01-01
    • 1970-01-01
    • 2016-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多