PHP-materi-6 : Bilangan


Kita lanjutkan belajar PHP-nya. Bagi yang belum membaca materi sebelumnya, silakan disimak : PHP-materi-5 : Fungsi untuk Mengolah String. Bagi yang baru pertama kali bergabung untuk sama-sama belajar PHP di blog ini, silakan simak materi awal : Berkenalan dengan PHP.

Pada kesempatan kali ini kita akan mengupas tentang PHP dan Bilangan (Number). Kita akan bicara tentang tipe data integer dan float.

Perlu diingat bahwa di dalam PHP dapat dilakukan konversi tipe data secara otomatis. Misalnya variabel yang diisi dengan integer maka otomatis tipe datanya integer. Jika variabel yang sama selanjutnya diisi dengan string maka otomatis tipe datanya akan berubah menjadi string.

Integer

1, -1, 1000000, -1000000, 0, 234, -234 semuanya bertipe data integer. Bilangan-bilangan yang dicontohkan tersebut adalah bilangan bulat. Jadi, agar mudah kita pahami, integer direpresentasikan dengan bilangan bulat. Rentang bilangan integer untuk sistem komputasi 32 bit sekitar minus 2 milyar sampai plus 2 milyar, atau tepatnya :

-2147483648 sampai dengan 2147483647

Sedangkan rentang bilangan integer untuk sistem komputasi 64 bit sekitar minus 9 juta trilyun sampai plus 9 juta trilyun, atau tepatnya : 

-9223372036854775808 sampai dengan 9223372036854775807

Jika melebihi batasan tersebut, baik batas atas maupun batas bawah, maka suatu nilai akan disimpan dalam variabel dengan tipe data float.

Jika ada operasi perkalian 2 * 5.5 = 11, maka hasil perkalian tersebut, yaitu bilangan 11, akan tetap dianggap oleh PHP bertipe data float, sebab salah satu pengalinya bertipe float.

Ketentuan :

  1. Sebuah bilangan integer paling sedikit harus memiliki 1 digit.
  2. Sebuah bilangan integer harus bilangan bulat (tidak boleh memiliki decimal point).
  3. Sebuah bilangan integer dapat berupa bilangan bulat positif, negatif maupun nol.
  4. Sebuah bilangan integer dapat dinotasikan dengan bilangan basis 10 (decimal), bilangan basis 16 (hexadecimal) ataupun bilangan basis 8 (octal).

PHP memiliki konstanta yang telah didefinisikan sebelumnya untuk menyatakan tipe data integer, yaitu :

  • PHP_INT_MAX, yaitu integer terbesar yang di-support.
  • PHP_INT_MIN, yaitu integer terkecil yang di-support.
  • PHP_INT_SIZE, yaitu ukuran bilangan integer dalam satuan byte.

Untuk memeriksa apakah suatu variabel bertipe data integer, maka digunakan fungsi is_int().

Perhatikan contoh skrip berikut :

Hasilnya :

Dapat kita lihat bahwa meskipun hasil perkalian 2 * 5.5 adalah 11, dimana 11 merupakan bilangan bulat (tanpa decimal) namun tipe data variabel $x setelah perkalian tersebut teridentifikasi bukan integer. Hal itu disebabkan salah satu pengalinya adalah float, yaitu 5.5.

Berikut pembuktian batas atas, batas bawah dan ukuran tipe data integer :

Hasilnya :


Float

Float adalah bilangan dengan angka di belakang koma. Float adalah bilangan yang mengandung pecahan. Float adalah bilangan tidak bulat. Float adalah bilangan dengan decimal point.

Tipe data float dapat menyimpan value sampai 1.7976931348623E+308 (tergantung platform yang digunakan) dengan presisi sampai dengan 14 digit.

PHP memiliki konstanta yang telah didefinisikan sebelumnya untuk menyatakan tipe data float, yaitu :

  • PHP_FLOAT_MAX, adalah bilangan terbesar yang dapat merepresentasikan float, merupakan batas atas tipe data float.
  • PHP_FLOAT_MIN, adalah bilangan terkecil yang dapat merepresentasikan float, merupakan batas bawah tipe data float.
  • PHP_FLOAT_DIG, adalah banyaknya digit desimal yang dapat dibulatkan ke float dan dapat dikembalikan tanpa mengurangi presisinya.
  • PHP_FLOAT_EPSILON, adalah bilangan positif terkecil yang dapat ditampilkan.

Berikut penerapannya dalam skrip :

Hasilnya :

Untuk memastikan apakah suatu variabel float atau tidak, dapat dilakukan dengan fungsi is_float().

Berikut penerapannya dalam skrip :

Hasilnya :

Jika suatu value melebihi batas, maka disebut INFINITE. Kita dapat memeriksanya dengan fungsi var_dump. Sebagai contoh var_dump(1.1e309) akan menghasilkan float(INF).

Jika suatu value bukan angka dan mustahil untuk dioperasikan secara matematis, maka disebut NaN. NaN singkatan dari Not a Number. Kita juga dapat memeriksanya dengan fungsi var_dump.

Jika kita ingin memeriksa apakah suatu variabel bilangan (numeric) atau bukan, maka kita dapat menggunakan fungsi is_numeric(). Sebagai contoh :

  • var_dump(is_numeric(5)) hasilnya bool(true)
  • var_dump(is_numeric("6")) hasilnya bool(true)
  • var_dump(is_numeric("hai")) hasilnya bool(false)

Yang menarik, ternyata 5 + "6" dapat dioperasikan dan hasilnya 11.

Konversi Tipe Data

Kita dapat mengkonversi tipe data float, misalnya 6.5, ke integer. Caranya dengan menggunakan sintaks ini : (int)6.5 dan hasilnya adalah 6.

Silakan dicoba.

Demikian pembahasan kali ini. Semoga bermanfaat.


Subscribe to receive free email updates:

0 Response to "PHP-materi-6 : Bilangan"

Post a Comment