Merhaba arkadaşlar bu yazımızda sizlere Php dilinde kullandığımız sayısal veri tiplerinden bahsedeceğim.
Php dilinde dikkat etmeniz gereken en önemli noktalardan biri değer atadığınız değişkenlerin veri tipinin otomatik olarak belirlenmesidir. Hemen bir örnekle açıklayalım.
<?php $i = 5; var_dump($i); ?>
Yukardaki kodu çalıştırdığınızda size veri tipi olarak integer döndürecektir. Php de veri tipi tanımlarken türünü belirmenize gerek yoktur yani :)
İnteger sayı tipi tm sayıları temsil eder. Ondalıklı kısımları yoktur.
Php dilinde tamsayılar -2147483648 ile 2147483647 arasındaki değerleri alırlar.
Tamsayıları kulanırken uymanız gereken bazı kurallar vardır ;
1) Tamsayılar 3 biçimde belirtilebilir: Onluk taban, Sekizlik taban ve On Altılık taban.
2) Bir tamsayı en az bir rakam içermelidir.
3) Tamsayılar ondalıklı kısım içermezler.
4) Bir tamsayı pozitif veya negatif olabilir.
Aşağıda bir kaç tamsayı örneği ve bir değişkenin değerinin tamsayı olup olmadığını anlamamız için kullanılan bir kaç fonksiyon örneği ni görüyorsunuz.
<?php $tamsayi = 5545; var_dump(is_int($tamsayi)); //sonuç bool(true) var_dump(is_integer($tamsayi)); //sonuç bool(true) var_dump(is_long($tamsayi)); //sonuç bool(true) ?>
Float sayı tipi ise ondalıklı veya üstel bir sayı tipidir. Ve maksimum 14 haneli sayısal karakter değeri alabilir.
Bir sayının float değere sahip olup olmadığını anlamak için aşağıda gösterdiğim 2 adet fonksiyondan herhangi birini kullanabiliriz.
<?php $tamsayi = 10.365; var_dump(is_float($tamsayi)); // sonuç bool(true) var_dump(is_double($tamsayi)); // sonuç bool(true) ?>
FLOAT_MAX_SIZE yani gösterilebilecek en büyük pozitif tam sayıdan büyük olan sayılar sonsuz sayı olarak nitelendirilir.
Php'de bir sayının sonsuz mu yoksa sonlu mu olduğunu anlamamız 2 adet fonksiyon tanımlıdır.
<?php $sayi = 1.9e411; var_dump(isfinite($sayi)); // sonuç bool(false) var_dump(isinfinite($sayi)); // sonuç bool(true) ?>
NaN açılımı Not a Number yani sayı değil anlamına gelmektedir. Sayısal olmayan değerleri tutar.
<?php echo is_nan(200) . "<br>"; // boş değer döner echo is_nan(acos(1.01)); // 1 sonucunu döndürür ?>
Bu fonksiyon ile bir veri değerinin sayısal olup olmadığı kontrolünü yapabiliriz.
<?php $sayi = "52.55"; if(is_numeric($sayi)) echo "Sayısal Bir Değerdir"; else echo "Sayısal bir değer değildir"; ?>
Bazen değişkenleri tamsayı olarak kullanmak zorunlu olabilir. Bu durumda değişkenin değerine zorunlu tür dönüşümü yapılabilir.
<?php // Cast float to int $x = 23465.768; $int_cast = (int)$x; echo $int_cast; // çıktı 23465 echo "<br>"; $x = "23465.768"; $int_cast = (int)$x; echo $int_cast; // çıktı 23465 ?>