(PHP 4, PHP 5, PHP 7, PHP 8)
intval — Bir değişkenin tamsayı değerini döndürür
Belirtilen değişkenin taban tabanında tamsayı
değerini döndürür (10 tabanı öntanımlıdır). İşlev nesnelerle kullanılamaz,
aksi takdirde E_WARNING seviyesinde bir hata
çıktılanır ve işlev 1 döndürür.
değişkenBir tamsayıya dönüştürülecek bir sayıl değer.
tabanDönüşülecek sayı tabanı.
Bilginize:
taban0 ise, taban değerin biçemine göre saptanır:
- Dizge bir "0x" (veya "0X") öneki içeriyorsa, taban 16'dır; aksi takdirde,
- dizge "0b" (veya "0B") öneki içeriyorsa, taban 2'dir (ikli); aksi takdirde,
- dizge "0" ile başlıyorsa, taban 8'dir; aksi takdirde,
- taban 10 'dur.
Başarı durumunda belirtilen değerin tamsayı değeriyle, başarısızlık durumunda 0 döner. Boş diziler ve nesneler 0 döndürür. Boş olmayan diziler ise 1 döndürür.
Azami değer sisteme bağlıdır. 32 bitlik sistemlerde işaretli tamsayılar
için azami değerler -2147483648 ve 2147483647'dir. Bu bakımdan, böyle
sistemlerde örneğin intval('1000000000000') değeri
2147483647 döndürür. 64 bitlik sistemlerde işaretli tamsayılar için azami
değer 9223372036854775807'dir.
Dizgeler için dönecek değer genellikle en soldaki karaktere bağlıysa da çoğunlukla 0 döner. Genel kurallar için integer türüne dönüşüm bölümüne bakınız.
Örnek 1 - intval() örnekleri
Aşağıdaki örnekler 64 bitlik sistemler içindir.
<?php
echo intval(42); // 42
echo intval(4.2); // 4
echo intval('42'); // 42
echo intval('+42'); // 42
echo intval('-42'); // -42
echo intval(042); // 34
echo intval('042'); // 42
echo intval(1e10); // 10000000000
echo intval('1e10'); // 10000000000
echo intval(0x1A); // 26
echo intval('0x1A'); // 0
echo intval('0x1A', 0); // 26
echo intval(42000000); // 42000000
echo intval(420000000000000000000); // -4275113695319687168
echo intval('420000000000000000000'); // 9223372036854775807
echo intval(42, 8); // 42
echo intval('42', 8); // 34
echo intval(array()); // 0
echo intval(array('foo', 'bar')); // 1
echo intval(false); // 0
echo intval(true); // 1
?>Bilginize:
Belirtilen değişken bir dizge olmadıkça
tabanbağımsız değişkeninin bir etkisi yoktur.