为了填充大量值的标签,我不希望显示等于'0'的值。PHP格式数字隐藏零
。例如,而不是:
Test USER 1 0 1 0
Sample USER 1 0 1 0
我想有:
Test USER 1 1
Sample USER 1 1
我使用printf("<td>%d</td>", $value);
显示我的价值我甚至试过printf("<td>%0d</td>", $dl_ends[0]);
谢谢
为了填充大量值的标签,我不希望显示等于'0'的值。PHP格式数字隐藏零
。例如,而不是:
Test USER 1 0 1 0
Sample USER 1 0 1 0
我想有:
Test USER 1 1
Sample USER 1 1
我使用printf("<td>%d</td>", $value);
显示我的价值我甚至试过printf("<td>%0d</td>", $dl_ends[0]);
谢谢
试试这个
printf("<td>%d</td>", $value != 0 ? $value : '');
编辑
如果您还需要搭上空字符串,你可以使用下面的代码
printf("<td>%d</td>", $value != 0 && $value != '' ? $value : '');
<td><?php $value ? printf("%d", $value) : ''; ?></td>
'<?php $ value!= 0? printf(“%d”,$ value):''; ?>' 会更好,不是吗? – Pacmac 2013-04-10 07:40:01
如果'$ value'为0,FALSE或NULL,那么第二个语句将被执行,除了这些值和第一个语句之外的任何东西都会被执行,尽管你的方式也可以工作 – verbumSapienti 2013-04-10 10:56:48
有两种方法来解决我的问题: printf("<td>%s</td>", $value != 0 ? $value : '');
避免数字格式,或 $value != 0 ? printf("<td>%d</td>", $value) : printf("<td></td>");
这是更长,但更精确。
做一个'var_dump($ value);'来查看这个变量的内容。 'printf(“%d”,0);'工作得很好。 – 2013-04-09 17:53:30