Mengenal Tipe Data Variabel dalam PHP


PHP tidak memerlukan pendefinisian variabel, tipe data akan secara otomatis berubah oleh operator yang digunakan, karena PHP menggunakan Type Juggling. Tetapi selain menggunakan Type Juggling, PHP juga menggunakan Type Casting, yang dapat menentukan secara manual tipe data yang dimaksud.

Type Juggling

Type Juggling merupakan behaviour atau sifat dari variabel PHP yang akan secara otomatis mengubah tipe data dari variabel tersebut tergantung dari operator yang digunakan ketika memasukan isi dari variabel tersebut.
 
1
 
Bila data di set dengan operator integer seperti tambah, kurang atau kali (bintang), maka data akan berubah menjadi integer, begitu juga bila di set dengan operator string seperti petik[ganda] ",' atau titik untuk penghubung string.
 
  1. <?php 
  2.     # $foo adalah string 
  3.     $foo = "0"
  4.      
  5.     # $foo sekarang menjadi Integer karena ditambah 2 
  6.     $foo += 2;     
  7.      
  8.     # $foo sekarang menjadi Float/Real 
  9.     $foo = $foo + 1.3
  10.      
  11.     # $foo menjadi integer (15) 
  12.     $foo = 5 + "10 dan sedikit string"
  13.      
  14.     # $foo menjadi string "510 dengan String" 
  15.     $foo = 5 . "10 dengan String"
  16.      
  17.     # $foo menjadi Array("ini Array") 
  18.     $foo[0] = "ini Array"
  19. ?> 
 

Type Casting

1
Tipe data dapat dirubah sesuai keinginan kita dengan menggunakan perintah Type Casting. Perintah-perintah Type Casting diantaranya:
  • (int) , (integer) - Merubah Menjadi Integer
     
  • (bool) , (boolean) - Merubah Menjadi Boolean
     
  • (float) , (double), (real) - Merubah Menjadi Float/Real
     
  • (string) - Merubah Menjadi String
     
  • (array) - Merubah Menjadi Array
     
  • (object) - Merubah Menjadi Objek
 
Catatan: Tab dan Spasi diperbolehkan didalamnya.
 
Contoh:
  1. <?php 
  2.     $foo = (int) $var
  3.  
  4.     # Menggunakan Spasi pada perintah type casting 
  5.     $foo = ( int ) $var
  6. ?> 
 
Contoh penggunaan Type Casting:
  1. <?php 
  2.     # $foo adalah integer 
  3.     $foo = 10
  4.  
  5.     # $str adalah string 
  6.     $str = "$foo"
  7.  
  8.     # $fst adalah string yang berisi "10" 
  9.     $fst = (string) $foo
  10. ?> 
 

Jenis-Jenis Tipe Data dalam PHP

Tipe Data dalam PHP dibagi menjadi tiga bagian, yaitu Scalar Type, Compound Type,dan Special Type.
 

Scalar Type

Scalar Type adalah tipe data yang hanya memuat satu data dalam variabel. Tipe Data yang termasuk kedalam Tipe Scalar adalah:
 
1. Boolean
Tipe Data ini adalah tipe data yang paling sederhana. Hanya berupa true atau false. Cara memasukan ke dalam variabel adalah dengan memberikan nilai true atau false pada variabel tersebut, seperti dalam Contoh berikut:
 
  1. <?php 
  2.     # $foo akan berisi boolean TRUE 
  3.     $foo = true
  4. ?> 
 
1
 
Setiap Tipe Data dalam PHP mempunyai Boolean untuk melakukan Seleksi Kondisi. dan Tipe Data tersebut akan memberikan nilai true atau false pada seleksi kondisi tersebut.
  • Pada Variabel yang bertipe Data integer=0 (nol) mempunyai boolean false, selain itu true.
  • Pada Variabel yang bertipe Data float=0.0 (nol) mempunyai boolean false, selain itu true.
  • Pada Tipe Data string yang kosong, dan string="0" mempunyai boolean false, selain itutrue.
  • Array yang tidak mempunyai element mempunyai boolean false, selain itu true.
  • Objek yang tidak mempunyai member mempunyai boolean false, selain itu true.
  • Tipe NULL dan Variabel yang belum terisi mempunyai boolean false.
 
2. Integer
Integer merupakan Tipe Data yang berisikan bilangan bulat negatif dan positif atau tanpa ada nilai pecahan.
 
1
 
3. Float/Real
Float merupakan Tipe Data yang berisikan bilangan real negatif dan positif atau yang memiliki nilai pecahan.
 
4. String
String merupakan Tipe Data yang berisikan satu atau kumpulan karakter.
1
 
 

Compound Type

Compound Type adalah Tipe Data yang dapat mempunyai lebih dari satu element. Tipe Data yang termasuk kedalam Tipe Compound adalah:
 
1. Array
Array atau Larik merupakan Tipe Compound Primitif, terdapat pada bahasa-bahasa pemrograman lain. Tipe Data ini dapat memuat beberapa element, dan Isi Data untuk element array tersebut juga bisa bertipe array dan tipe scalar, compound atau special.
1
 
2. Object
Tipe Data ini adalah tipe data baru pada PHP yang dapat digunakan untuk membangun suatu program web yang berbasiskan object oriented. Isi dari Tipe Data ini bisa berupa Fungsi dan Variabel dan bisa terdiri dari beberapa element.
1
 

Special Type

Ada dua Tipe Data yang termasuk kedalam Special Type. Keduanya mempunyai ciri khas yang tidak dapat dimasukan kedalam Scalar ataupun Compound. Tipe Data yang termasuk kedalam Tipe Special adalah:
 
 
1. NULL
NULL adalah Tipe Data yang tidak memuat apapun. Setiap Variabel yang diset menjadi Tipe Data NULL ini akan menjadikan Variabel tersebut kosong, seperti dalam penggunaan fungsi unset(). Cara untuk menset Variabel menjadi NULL adalah dengan
memasukan nilai NULL pada variabel yang dimaksud seperti pada Contoh berikut:
 
  1. <?php 
  2.     # Nilai awal $foo adalan 10 
  3.     $foo = 10
  4.      
  5.     # $foo akan menjadi NULL 
  6.     $foo = NULL
  7.      
  8.     # Sama dengan memanggil unset() 
  9.     unset($foo); 
  10. ?> 
 
2. Resource
Tipe Data Spesial yang satu ini di khususkan untuk menyimpan resourcesumber atau alamat. Variabel tersebut hanya dapat diciptakan oleh suatu fungsi khusus yang mengembalikan nilai berupa resource seperti penggunaan fungsi fopenopendir,
mysql_connectmysql_query dan semacamnya.
 
1
 
Untuk mengetahui fungsi-fungsi apa saja yang mengembalikan nilai berupa resource, lihat dalam PHP Manual padaAppendices tentang Resource.
 

Kesimpulan

PHP merupakan Bahasa Pemrograman yang bersifat Fleksibel dan mudah untuk dipelajari tanpa mengesampingkan kehandalan dari PHP itu sendiri. Dengan adanya Type Juggling programmer dimanjakan dengan kemudahan dalam pengaksesan variabel, tapi PHP tidak dengan begitunya mengesampingkan cara pengaksesan lain pada tipe data yang pada dasarnya memang berbeda untuk setiap data dalam variabel, oleh karena itu Type Casting tetap di kenal di dalam PHP.

2 comments

thanks for visiting my blog :)
i like read your comment
follow me, and i'll follow back you.