我有一个输入框,用户可以在其中输入数字,然后该数字将输出到html页面。这一切都很好,除非你输入数字0它没有输出任何东西,但它需要说0.这是我为WordPress写的一个现场棒球比赛得分插件所以我需要" Inning 1&#34 ;阅读" 0"如果没有跑步得分。以下是我的代码的要点:
$t1Inning1 = ( $instance['t1Inning1'] ) ? $instance['t1Inning1'] : '-';
<div><?php echo $t1Inning1 ?></div>
<label for="<?php echo $this->get_field_id('t1Inning1'); ?>">
<input id="<?php echo $this->get_field_id('t1Inning1'); ?>"
name="<?php echo $this->get_field_name('t1Inning1'); ?>"
value="<?php echo esc_attr( $instance['t1Inning1'] ); ?>"
maxlength="2" size="3" />
</label>
您可以在左中间的http://juniorregionals.com/看到输出。 &#39; - &#39;只是默认值,当你在插件中输入0并且保存它时它不会改变但是如果输入0则我需要它再读0。
如果我需要更具体,请告诉我
答案 0 :(得分:3)
您在0
上使用了三元运算符,这是一个假值,例如
echo 0 ? 1 : 2; // 2
也许您打算检查$instance["t1Inning1"]
是否设置而不是麻痹?
$t1Inning1 = isset($instance['t1Inning1']) ? $instance['t1Inning1'] : '-';
答案 1 :(得分:0)
来自Wordpress Stack交换网站的人让我添加了一个精确的比较:
$t1Inning1 = isset( $instance['t1Inning1'] ) && $instance['t1Inning1'] !== '' ? $instance['t1Inning1'] : '-';
这完美无瑕。谢谢你的帮助@Marty。你实际上让球快速滚动。