PHP格式数字隐藏零

PHP格式数字隐藏零,php,numbers,format,hide,zero,Php,Numbers,Format,Hide,Zero,为了用大量值填充选项卡,我不希望显示等于“0”的值 例如,与其拥有: Test USER 1 0 1 0 Sample USER 1 0 1 0 我想要: Test USER 1 1 Sample USER 1 1 我使用printf(“%d”,$value)显示我的值 我甚至尝试了printf(“%0d”,$dl_ends[0]) 谢谢你试试这个 printf(“%d”,$value!=0?$value:”); 编辑 如果还需

为了用大量值填充选项卡,我不希望显示等于“0”的值

例如,与其拥有:

Test USER   1   0   1   0
Sample USER 1   0   1   0
我想要:

Test USER   1       1   
Sample USER 1       1
我使用
printf(“%d”,$value)显示我的值

我甚至尝试了
printf(“%0d”,$dl_ends[0])

谢谢你试试这个

printf(“%d”,$value!=0?$value:”);
编辑

如果还需要捕获空字符串,可以使用以下代码

printf(“%d”,$value!=0&&$value!=''?$value:'');

有两种方法可以解决我的问题:
printf(“%s”,$value!=0?$value:”)避免数字格式,或

$value!=0 ? printf(“%d”,$value):printf(“”)更长但更精确。

执行
var\u转储($value)
以查看此变量的内容<代码>printf(“%d”,0)工作正常。谢谢JackPoint,但这并不能解决问题,因为它会给出一个空字符串,并将其格式化为数字->0。另一种方法是,即使不允许数字格式,也可以使用以下方法:
printf(“%s”,$value!=0?$value:”)
添加了第二个检查空字符串的代码示例。这是否符合您的需要?
会更好,不是吗?如果
$value
为0、FALSE或NULL,则将执行第二条语句,执行除这些值以外的任何语句,并执行第一条语句,尽管您的方法也可以
<td><?php $value ? printf("%d", $value) : ''; ?></td>