PHP, nasıl bir sıfır dolgulu sayısal dize eklemek ve sıfır doldurma korumak mı?

2 Cevap php

I 0001 içeren PHP bir değişken var ve ben buna 1 eklerseniz, sonuç 2 yerine 0002 olduğunu.

Nasıl bu sorunu çözmek?

2 Cevap

Muhtemelen size PHP veri türlerini anlamak için yardımcı ve çeşitli değişkenler işlemleri yapmak zaman etkilemiştir nasıl olur. Eğer "PHP değişken 0001 say" söylüyorlar, ama bu değişken türü nedir? Muhtemelen bir dize, "0001", bir tamsayı beri (sadece 1 var) bu değeri olamaz. Peki bunu ne zaman:

echo ("0001" + 1);

... + operatörü Hm, bir dize ve bir tamsayı var "diyor. Ben bir dize ve bir int eklemek nasıl bilmiyorum. Ama bir int INTO bir dize dönüştürmek için biliyorum DO , ve sonra 1. Neden birlikte iki İnts eklemek, bu yüzden bana böyle yapalım, "ve sonra dönüştürür" "0001? Bir tamsayı bir dize dönüştürmek için PHP kuralları dize önde gelen sıfır herhangi bir sayı atılır söylüyorlar çünkü. Hangi dize "0001" 1 olur anlamına gelir.

Ardından + "Hey, ben 1 ve 1 eklemek için biliyorum. It 2 ​​bulunuyor!" Diyor ve bu ifadenin çıktısı 2.

Başka bir seçenek str_pad() fonksiyonudur.

$text = str_pad($text, 4, '0', STR_PAD_LEFT);