ホームページ  >  記事  >  バックエンド開発  >  0から始まるデータの循環累積の問題

0から始まるデータの循環累積の問題

WBOY
WBOYオリジナル
2016-06-23 13:42:03832ブラウズ

今日、契約番号のバッチをバッチで生成する必要があり、問題が発生しました。たとえば、
start=0066812~end=0066818

for ($start;$start<=$end;$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 である必要があります。 ;
前に 2 つの 0 がある
なぜならシードはまだあります 009999から010000かもしれません。とにかく、09の次は10になり、前に0が2つありません

何か違いはありますか?

$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;
8 進数だと書いてしまえば、それで終わりです

何か違いはありますか?

$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;
8 進数だと書いたら、それで終わりです



ありがとうございます、とても良い講義でした、素晴らしいマスター
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。