İşte benim kod:
<?php $variable1 = 00001; $variable2 = (sprintf('%04d', $variable1 + 1)); echo $variable2; ?>
"0002" ve "00002" Nasıl bu kodun sonucu gelir mi? diğer bir deyişle, bir 0 eksik.
% 04d içinde 4 yazdırılan değerin toplam genişliğini ayarlar
ilk parametresinde sayı "karakter sayısı" değil padding kullanmak için sıfırların sayısıdır. Ne arıyorsun yerine% 05d olduğunu.
Neden 'yerine '0011' nolu aşağıdaki yazdırma '0009 yapar daha ilginç bir soru?
<?php $var = 0010; $str = sprintf('%04d', $var+1); echo $str; ?>
Peki neden yine sekizlik gösterimi kullanıyorsunuz? Ben sadece merak ediyorum.