>백엔드 개발 >PHP 튜토리얼 >一个0开头的数据循环累加的问题

一个0开头的数据循环累加的问题

WBOY
WBOY원래의
2016-06-23 13:42:03877검색

今天要批量生成一批合同号,遇到问题了,比如说
start=0066812~end=0066818

for ($start;$start 除了0066812之外,后面的全将00给去掉了,请问有什么方法可以保留住0的??


回复讨论(解决方案)

$start = 66812;$end = 66818;for ($start;$start<=$end;$start++){  $s = sprintf('%07d', $start);  echo $s . '<br>';}
0066812006681300668140066815006681600668170066818

$start = 66812;$end = 66818;for ($start;$start<=$end;$start++){  $s = sprintf('%07d', $start);  echo $s . '<br>';}
0066812006681300668140066815006681600668170066818


赋值的时候一定要是
$start = 0066812;
$end = 0066818;
前边有两个0
因为还有种可能是009999到010000,反正09过了就是10,前边就不是两个0了

有什么区别吗?

$start = '0066812';$end = '0066818'; for ($start;$start<=$end;$start++){  $s = sprintf('%07d', $start);  echo $s . '<br>';}
0066812
0066813
0066814
0066815
0066816
0066817
0066818


但是如果写作 $start = 0066812;
那就是八进制数,全完蛋了

有什么区别吗?

$start = '0066812';$end = '0066818'; for ($start;$start<=$end;$start++){  $s = sprintf('%07d', $start);  echo $s . '<br>';}
0066812
0066813
0066814
0066815
0066816
0066817
0066818


但是如果写作 $start = 0066812;
那就是八进制数,全完蛋了



谢谢,讲得非常好,大师太好了
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.