Pengertian Fungsi (Function) dalam PHP

Dalam merancang kode program, kadang kita sering membuat kode yang melakukan tugas yang sama secara berulang-ulang, seperti membaca tabel dari database, menampilkan penjumlahan, dan lain-lain. Tugas yang sama ini akan lebih efektif jika dipisahkan dari program utama, dan dirancang menjadi sebuah fungsi.
Fungsi (atau Function) dalam bahasa pemograman adalah kode program yang dirancang untuk menyelesaikan sebuah tugas tertentu, dan merupakan bagian dari program utama. Kita dapat membuat fungsi sendiri, atau menggunakan fungsi yang dibuat oleh programmer lain.
Dalam dunia pemograman terdapat istilah ‘lazy progamming’ yang artinya bukanlah programmer yang malas. Tetapi, daripada membuat kode program umum dari dasar, kita bisa menggunakan fungsi yang telah dibuat oleh programmer lain. PHP bahkan menyediakan ribuan fungsi bawaan yang tersedia untuk membantu kita dalam merancang program.
Mengetahui cara penggunaan fungsi ini akan menghemat waktu pembuatan program dan membuat kode program menjadi lebih efisien. Lazy programming is smart programming.

Cara Menggunakan Fungsi PHP

Menggunakan fungsi dalam teori pemograman sering juga disebut dengan istilah ‘memanggil fungsi’ (calling a function). Fungsi dipanggil dengan menulis nama dari fungsi tersebut, dan diikuti dengan argumen (jika ada). Argumen ditulis di dalam tanda kurung, dan jika jumlah argumenlebih dari satu, maka diantaranya dipisahkan oleh karakter koma.
Setelah memproses nilai inputan, hampir semua fungsi akan memberikan nilai hasil pemrosesan tersebut (walaupun ada fungsi yang tidak memberikan nilai). Cara fungsi memberikan nilainya ini sering disebut dengan ‘mengembalikan nilai’ (return a value). Nilai yang dikembalikan oleh sebuah fungsi dapat ditampung ke dalam variabel, atau langsung ditampilkan ke web browser.

Pengertian Argumen dan Parameter dalam Fungsi PHP

Sebuah fungsi dalam memproses data, kadang memerlukan beberapa inputan atau nilai masukan. Inputan inilah yang dimaksud dengan argumen. Sebuah fungsi bisa membutuhkan 1, 2, atau 5 argumen, namun bisa juga tidak memerlukan argumen sama sekali.
Parameter adalah sebutan lain untuk argumen. Perbedaannya, parameter merujuk kepada inputan fungsi pada saat pendefenisian fungsi tersebut, dan agrumen adalah sebutan untuk inputan fungsi pada saat pemanggilan fungsi. Kita akan membahas perbedaan Argumen dan Parameter secara lebih dalam  pada tutorial selanjutnya, namun pada dasarnya argumen dan parameter merujuk kepada hal yang sama, yaitu inputan kepada fungsi dan kedua istilah ini sering dipertukarkan.

Contoh Pemanggilan Fungsi PHP

Sebagai latihan dan prakter dalam menggunakan fungsi,  Berikut adalah format dasar pemanggilan, dan pengembalian nilai fungsi:

$varibel_hasil_fungsi = nama_fungsi(argumen1, argumen2, argumen3)
  • $varibel_hasil_fungsi adalah variabel yang akan menampung hasil pemrosesan fungsi. Tergantung fungsinya, hasil dari sebuah fungsi bisa berupa angka, string, array, bahkan objek.
  • nama_fungsi adalah nama dari fungsi yang akan dipanggil
  • argumen1, argumen2 adalah nilai inputan fungsi. Banyaknya argumen yang dibutuhkan, tergantung kepada fungsi tersebut. Jika sebuah fungsi membutuhkan argumen 2 buah angka, maka kita harus menginputnya sesuai dengan aturan tersebut, atau jika tidak, PHP akan mengeluarkan error.
Sebagai contoh, PHP menyediakan fungsi akar kuadrat, yakni sqrt(), berikut adalah cara penggunaannya:
<?php
$akar_kuadrat = sqrt(49);
echo "Akar kuadrat dari 49 adalah $akar_kuadrat";
// Akar kuadrat dari 49 adalah 7

?>

Dalam contoh diatas, fungsi sqrt() akan menghitung akar kuadrat dari nilai argumen yang diinput. Saya menambahkan argumen 49 sebagai inputan.
Nilai hasil dari fungsi sqrt(49), selanjutnya di tampung dalam variabel $akan_kuadrat, yang kemudian ditampilkan ke dalam web browser.
Selain ditampung di dalam variabel, kita bisa menampilkan hasil fungsi langsung ke web browser, seperti contoh berikut:

<?php
echo "12 pangkat 2 adalah: ".pow(12,2);
// 12 pangkat 2 adalah: 144

?>
Fungsi pow() adalah fungsi pemangkatan matematika bawaan PHP. Fungsi ini membutuhkan 2 argumen, argumen pertama adalah nilai awal yang ingin dihitung, dan argumen kedua adalah nilai pangkat. Pow(12,2) sama dengan 12 kuadrat.
Perlu juga diperhatikan adalah tipe parameter yang dibutuhkan oleh sebuah fungsi. Seperti 2 contoh kita diatas, fungsi sqrt() dan pow() adalah fungsi matematika. Kedua fungsi ini hanya bisa memproses parameter dengan tipe angka (interger dan float). Jika anda memasukkan parameter jenis string, maka PHP akan mengeluarkan error.

Jumlah dan urutan argumen juga harus sesuai dengan yang dibutuhkan oleh fungsi. Jika sebuah fungsi hanya membutuhkan 1 argumen, maka kita tidak bisa menambahkan argumen kedua, kecuali ada argumen yang bersifat opsional (dapat diabaikan).

Koneksi Database MySQL di PHP

MySQL merupakan database yang paling sering dipasangkan dengan PHP. Artikel berikut menunjukkan code PHP untuk melakukan koneksi ke database MySQL dan melakukan query.

Untuk menjalankan latihan langkah demi langkah di bawah ini, Anda dianggap sudah melakukan instalasi database PHI-Minimart sebelumnya. kalau belum punya harap download dulu.

Membuka dan Menutup Koneksi MySQL

Untuk melakukan koneksi ke MySQL gunakan perintah berikut :

mysql_connect(nama_host, nama_user, password)

atau

$var_koneksi = mysql_connect(nama_host, nama_user, password)


dan untuk menutup koneksi kita gunakan :

mysql_close()

atau

mysql_close($var_koneksi)

Sebagai contoh, misalkan kita ingin melakukan koneksi ke server "localhost" kita dengan user "root" tanpa password (kosong). Berikut adalah contoh scriptnya :

<?php
        error_reporting(0);
        $koneksi = mysql_connect("localhost","root","") or die("Koneksi Gagal !" . mysql_error());
        if($koneksi) echo "Koneksi Berhasil";
        mysql_close($koneksi);
?>



Memilih Database

Setelah koneksi berhasil saatnya kita memilih database yang akan kita gunakan, berikut adalah syntax perintahnya :

mysql_select_db ( nama_database )

atau

mysql_select_db ( nama_database, $var_koneksi)

Berikut adalah contoh scriptnya :

<?php        error_reporting(0);               $koneksi = mysql_connect("localhost","root","") or die("Koneksi Gagal !" . mysql_error());        if($koneksi) echo "Koneksi Berhasil";         $db = mysql_select_db("phi_minimart_master") or die("Database tidak ada !" . mysql_error());               echo "<br />";               if($db) echo "Database phi_minimart_master berhasil dibuka !";         mysql_close($koneksi);?>

Selesai.
MySQL adalah sebuah perangkat lunak system manajemen basis data SQL (DBMS) yang multithread, dan multi-user. MySQL adalah implementasi dari system manajemen basisdata relasional (RDBMS). MySQL dibuah oleh TcX dan telah dipercaya mengelola system dengan 40 buah database berisi 10.000 tabel dan 500 di antaranya memiliki 7 juta baris.
MySQL AB merupakan perusahaan komersial Swedia yang mensponsori dan yang memiliki MySQL. Pendiri MySQL AB adalah dua orang Swedia yang bernama David Axmark, Allan Larsson dan satu orang Finlandia bernama Michael “Monty”. Setiap pengguna MySQL dapat menggunakannya secara bebas yang didistribusikan gratis dibawah lisensi GPL(General Public License) namun tidak boleh menjadikan produk turunan yang bersifat komersial.
Pada saat ini MySQL merupakan database server yang sangat terkenal di dunia, semua itu tak lain karena bahasa dasar yang digunakan untuk mengakses database yaitu SQL. SQL (Structured Query Language) pertama kali diterapkan pada sebuah proyek riset pada laboratorium riset San Jose, IBM yang bernama system R. Kemudian SQL juga dikembangan oleh Oracle, Informix dan Sybase. Dengan menggunakan SQL, proses pengaksesan database lebih user-friendly dibandingan dengan yang lain, misalnya dBase atau Clipper karena mereka masih menggunakan perintah-perintah pemrograman murni.
SQL dapat digunakan secara berdiri sendiri maupun di lekatkan pada bahasa pemograman seperti C, dan Delphi.
1. Elemen SQL
Elemen dari SQL yang paling dasar antara lain pernyataan, nama, tipe data, ekspresi, konstanta dan fungsi bawaan.
  • Pernyataan
Perintah dari SQL yang digunakan untuk meminta sebuah tindakan kepada DBMS.
Pernyataan dasar SQL antara lain :
  1. ALTER      : Merubah struktur tabel
  2. COMMIT  : Mengakhiri eksekusi transaksi
  3. CREATE   : Membuat tabel, indeks
  4. DELETE   : Menghapus baris pada sebuah tabel
  5. DROP        : Menghapus tabel, indeks
  6. GRANT     : Menugaskan hak terhadap basis data kepada user
  7. INSERT    : Menambah baris pada tabel
  8. REVOKE  : Membatalkan hak kepada basis data
  9. ROLLBACK  : Mengembalikan pada keadaan semula apabila transaksi gagal dilaksanakan
  10. SELECT    : Memilih baris dan kolom pada sebuah tabel
  11. UPDATE   : Mengubah value pada baris sebuah tabel
  • Nama
Nama digunakan sebagai identitas, yaitu identitas bagi objek pada DBMS. Misal : tabel, kolom dan pengguna.
  • Tipe data
Tipe data yang ada dalam MYSQL :
1. Tipe data numerik antara lain :
  1. TINYINT         : Nilai integer yang sangat kecil
  2. SMALLINT     : Nilai integer yang kecil
  3. MEDIUMINT  : Nilai integer yang sedang
  4. INT                   : Nilai integer dengan nilai standar
  5. BEGINT           : Nilai integer dengan nilai besar
  6. FLOAT             :Bilangan decimal dengan single-precission
  7. DOUBLE         :Bilangan decimal dengan double-precission
  8. DECIMAL(M,D)   : Bilangan float yang dinyatakan sebagai string. M : jumlah digit yang disimpan, D : jumlah angka dibelakang koma
2. Tipe data String antara lain :
  1. CHAR               : Karakter yang memiliki panjang tetap yaitu sebanyak n
  2. VARCHAR      : Karakter yang memiliki panjang tidak tetap yaitu maksimum n
  3. TINYBLOB     : BLOB dengan ukuran sangat kecil
  4. BLOB               : BLOB yang memiliki ukuran kecil
  5. MEDIUMBLOB    : BLOB yang memiliki ukuran sedang
  6. LONGBLOB    : BLOB yang memiliki ukuran besar
  7. TINYTEXT      : teks dengan ukuran sangat kecil
  8. TEXT                : teks yang memiliki ukuran kecil
  9. MEDIUMTEXT     : teks yang memiliki ukuran sedang
  10. LONGTEXT     : teks yang memiliki ukuran besar
  11. ENUM              : kolom diisi dengan satu member enumerasi
  12. SET                   : Kolom dapat diisi dengan beberapa nilai anggota himpunan
3. Tipe data tunggal dan jam :
  1. DATE        : date memiliki format tahun-bulan-tanggal
  2. TIME         : time memiliki format jam-menit-detik
  3. DATETIME           : gabungan dari format date dan time
  • Ekspresi
Ekspresi digunakan untuk menghasilkan/menghitung nilai.
Misalnya : jumlah=harga-diskon
Ekspresi aritmatika antara lain :
  1. +  : tambah
  2. –  : kurang
  3. /  : bagi
  4. *  : kali
  • Konstanta
Nilai yang tetap
  • Fungsi bawaan
Fungsi adalah subprogram yang dapat menghasilkan suatu nilai apabila fungsi tersebut dipanggil. Fungsi Agregat adalah fungsi yang digunakan untuk melakukan summary, statistik yang dilakukan pada suatu tabel/query.
  1. AVG(ekspresi)  : digunakan untuk mencari nilai rata-rata dalam kolom dari tabel.
  2. COUNT(x)       : digunakan untuk menghitung jumlah baris dari sebuah kolom dari tabel
  3. MAX(ekspresi) : digunakan untuk mencari nilai yang paling besar dari suatu kolom dari tabel
  4. MIN(ekspresi)   : digunakan untuk mencari nilai yang paling kecil dari suatu kolom dari tabel
  5. SUM(ekspresi)  : digunakan untuk mengitung jumlah keseluruhan dari suatu kolom dari tabel
2. Kelompok Penyataan SQL
Pernyataan SQL dapat dikelompokan menjadi 3 kelompok, yaitu : DDL, DML dan DCL.
1.Pernyataan SQL kelompok DDL (Data Defination Language)
DDL berfungsi untuk mendefinisikan atribut basis data, table, atribut(kolom), batasan-batasan terhadap suatu atribut, serta hubungan antar tabel. Perintah yang digunakan biasanya : CREATE, ALTER, dan DROP
  1. Membuat Database
  2. Syntax yang digunakan : CREATE DATABASE namadatabase;
  3. Menghapus Database
  4. Syntax yang digunakan : DROP DATABASE namadatabase;
  5. Membuat Tabel
  6. Syntax yang digunakan : CREATE TABLE namatabel;
  7. Menghapus Database
  8. Syntax yang digunakan : DROP DATABASE namadatabase;
  9. Menghapus Tabel
  10. Syntax yang digunakan : DROP TABEL namatabel;
  11. Mendefinisikan null/not null
  12. Syntax yang digunakan : CREATE TABLE namatabel
    ( Field1 TipeData1 NOT NULL,
    Field2 TipeData2
    );
  13. Mendefinisikan Nilai Default
  14. Syntax yang digunakan : CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2 DEFAULT nilai
    );
  15. Mendefinisikan Primary Key pada Tabel
  16. Dapat dilakukan dengan 3 Syntax :
    1)      CREATE TABLE namatabel
    ( Field1 TipeData1 NOT NULL PRIMARY KEY,
    Field2 TipeData2
    );
    2)      CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2,
    PRIMARY KEY(Field1)
    );
    3)      ALTER TABEL namatabel ADD CONSTRAINT namaconstraint PRIMARY KEY (NAMAKOLOM)
  17. Menghapus Primary Key pada Tabel
  18. Syntax yang digunakan ada 2 :
    1)      ALTER TABLE namatabel DROP CONSTRAINT NAMACONSTRAINT;
    2)      ALTER TABLE NAMATABEL DROP PRIMARY KEY;
  19. Menambah Kolom Baru pada Tabel
  20. Syntax yang digunakan : ALTER TABEL NAMATABEL ADD newfield tipe;
  21. Mengubah Tipe Data atau Lebar Kolom pada Tabel
  22. Syntax yang digunakan : ALTER TABEL namatabel MODIFY COLUMN field tipe;
  23. Mengubah Nama Kolom
  24. Syntax yang digunakan : ALTER TABEL namatabel CHANGE COLUMN namakolomlama namakolombaru tipe;
  25. Menghapus Kolom pada Tabel
  26. Syntax yang digunakan : ALTER TABEL namatabel DROP COLUMN namakolom;
  27. Mendefinisikan Foreign Key pada Tabel
  28. Dapat dilakukan dengan 2 Syntax :
    1)      CREATE TABLE namatabel
    ( Field1 TipeData1,
    Field2 TipeData2,
    FOREIGN KEY (Field2) REFERENCES namatabelinduk
    (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION)
    2)      ALTER TABEL namatabel ADD CONSTRAINT namaconstraint FOREIGN KEY (namakolom) REFERENCES namatabelinduk (namakolominduk) ON UPDATE CASCADE ON DELETE NO ACTION;
  29. Menghapus Foreign Key
  30. Syntak yang digunakan : ALTER TABEL namatabel DROP FOREIGN KEY namaconstraint;
2. DML (Data Manipulation Language)
DML berfungsi untuk memanipuladi data yang ada di dalam basis data, contohnya untuk pengambilan data, penyisipan data, pengubahan data dan penghapusan data.
Perintah yang digunakan biasanya adalah : INSERT, DELETE, UPDATE, dan SELECT.
  1. INSERT
  2. menambah baris pada tabel. Syntax yang paling sering digunakan : INSERT INTO namatabel VALUES (nilai1, nilai2, nilai-n);
  3. DELETE
  4. Menghapus baris pada tabel. Syntax : DELETE FROM namatabel [where kondisi];
  5. UPDATE
  6. Mengubah isi beberapa kolom pada tabel. Syntax : UPDATE namatabel SET kolom1=nilai1, kolom2=nilai2 [where kondisi];
  7. SELECT
  8. Menampilkan isi dari suatu tabel yang bisa dihubungkan dengan tabel yang lainnya;
Keunggulan MySQL
  • Program yang multi-threaded, sehingga dapat dipasang pada server yang memiliki mulit-CPU
  • Didukung bahasa pemrograman umum seperti C, C++, Java, Perl, PHP, Python, TCL, APls dls.
  • Bekerja pada berbagai platform
  • Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi system database
  • Memiliki jenis kolom yang cukup banyak sehingga memudahkan konfigurasi system database
  • Memiliki system sekuriti yang cukup baik dengan verifikasi host
  • Mendukung ODBC untuk OS Microsoft Windows
  • Mendukung record yang memiliki kolom dengan panjang tetap
  • Software yang free
  • Saling terintegrasi dengan PHP