2013-04-09 4 views
1

값이 많은 탭을 채우기 위해 '0'과 같은 값을 표시하지 않겠습니다. 예를 들어, 대신 갖는0을 숨기는 PHP 형식 번호

:

Test USER 1  1 
Sample USER 1  1 

내가 printf("<td>%d</td>", $value);

를 사용하여 내 값을 표시하는 난 printf("<td>%0d</td>", $dl_ends[0]);

을 시도했다 : 내가 좋아하는 것
Test USER 1 0 1 0 
Sample USER 1 0 1 0 

은이합니다

감사합니다.

+0

이 변수의 내용을 보려면'var_dump ($ value);'를 수행하십시오. 'printf ("% d", 0);은 잘 동작합니다. –

답변

0

는이

printf("<td>%d</td>", $value != 0 ? $value : ''); 

편집

당신은 또한 빈 문자열을 잡을해야하는 경우 해결하는 방법은 두 가지가 있습니다

printf("<td>%d</td>", $value != 0 && $value != '' ? $value : ''); 
+0

JackPoint에게 감사드립니다.하지만 숫자가 0이되면 빈 문자열을 형식화하여 문제를 해결할 수는 없습니다. 숫자 서식을 허용하지 않는 경우에도 다른 방법은 다음과 같습니다. printf (" % s", $ value! = 0? $ value : ''); ' – Pacmac

+0

빈 문자열. 이것이 당신의 필요에 맞는 것입니까? – JackPoint

0
<td><?php $value ? printf("%d", $value) : ''; ?></td> 
+0

' 더 좋을까요? – Pacmac

+0

'$ value'가 0, FALSE 또는 NULL 인 경우 두 번째 명령문이 실행되고 그 값과 첫 번째 명령문 이외의 다른 명령문도 실행됩니다. – verbumSapienti

0

다음 코드를 사용할 수 있습니다 시도 내 문제 : 번호 서식을 피하는 printf("<td>%s</td>", $value != 0 ? $value : ''); 또는 $value != 0 ? printf("<td>%d</td>", $value) : printf("<td></td>");이 더 길지만 더 정확합니다.