Pada kesempatan kali ini kita akan membahas fungsi dan perbedaan echo
, print
, print_r
, dan var_dump
pada PHP.
Pada pemrograman PHP kita akan sering mencetak output ke browser, entah itu untuk sekedar menampilkan output, mendeteksi error, dll.
Nah ternyata keempat statement diatas fungsi nya sama, yaitu mencetak output ke browser, namun, tentu saja keempatnya memiliki karakteristik yang berbeda, untuk lebih jelasnya, mari kita bahas satu per satu.
I. Fungsi Echo Pada PHP
echo
digunakan HANYA sekedar untuk mencetak output ke browser, tidak ada tujuan lain, sehingga statement inilah yang paling sering digunakan untuk mencetak output ke browser.
echo
bukanlah sebuah fungsi melainkan hanya “language costruct“, sehingga meskipun kita bisa menulis echo
menggunakan tanda kurung echo($nama)
, sebaiknya cara tersebut kita tinggalkan.
Kita dapat menambahkan argumen pada echo dengan pemisah tanda koma, misal: echo 'Nama ', $nama
Contoh penggunaan echo:
<?php
$nama = 'Agus';
// Umum digunakan
echo 'Nama: ' . $agus;
// Menggunakan koma (jarang digunakan) - performa sedikit lebih cepat
echo 'Nama: ' , $agus;
// Ternary - Umum digunakan
echo $nama == 'Agus' ? 'Benar' : 'Salah'; // Hasil Benar
echo
. Saya sendiri hampir tidak pernah menemui program yang menggunakan perintah print
untuk mencetak outputII. Fungsi Print Pada PHP
Seperti pada echo
, print
juga digunakan untuk mencetak output ke browse, namun bedanya:
print
ini akan selalu menghasilkan nilai 1.print
hanya dapat menerima satu argumen, sehingga kita tidak bisa menulis:print: 'Nama ' , $nama
print
ini juga bukan merupakan fungsi melainkan hanya “language construct” sehingga ketika menggunakannya, kita tidak perlu menggunakan tanda kurung.
Contoh penggunaan print
:
<?php
$nama = 'Agus';
print 'Nama: ' . $nama;
// ERROR
print 'Nama: ' , $nama;
// Ternary
print $nama == 'Agus' ? 'Benar' : 'Salah'; // Hasil Benar
// Menghasilkan 1
$nomor = print $nama; // Hasil Agus
print $nomor; // Hasil 1
$list_nama = array('Alfa', 'Beta', 'Charlie');
$jumlah = 0;
foreach ($list_nama as $nama) {
$jumlah = $jumlah + print $nama . '<br/>';
}
print $jumlah;
/** Hasil:
Alfa
Beta
Charlie
3
*/
Karena PHP akan memproses print sehingga menghasilkan nilai 1 maka statement print
ini sedikit lebih lambat daripada echo
, sehingga sangat jarang sekali program PHP yang menggunakan perintah ini untuk mencetak output ke browser.
III. Fungsi Print_r Pada PHP
Sama seperti statement sebelumnya, print_r
ini digunakan untuk mencetak output ke browser, namun bedanya, print_r
ini ditujukan untuk mencetak nilai variabel dengan format yang lebih mudah dibaca.
print_r
ini benar-benar merupakan fungsi sehingga kita harus menuliskannya menggunakan tanda kurung print_r()
print_r
ini hanya digunakan untuk debug program, biasanya digunakan untuk menetak / mengetahui isi dari array
maupun objek
(class
). Pada Objek, print_r
akan mencetak properti protected
dan private
, tetapi tidak untuk properti static
Output dari print_r
dapat langsung dicetak ke variabel atau disimpan ke variabel tertentu. Untuk menyimpan ke dalam variabel, kita perlu menambahkan argumen ke dua dengan nilai true
, misal: print_r($argumen1, true)
Contoh penggunaan print_r
:
<?php
$nama = 'Agus';
print_r ($nama); // Agus
$siswa = array ('Alfa', 'Beta', 'Charlie');
echo '<pre>'; print_r($siswa); echo '</pre>';
/** Hasil
Array
(
[0] => Alfa
[1] => Beta
[2] => Charlie
)
*/
// Menyimpan hasil print_r ke variabel
$siswa = array(
'nama' => array ('Alfa', 'Beta', 'Charlie'),
'jurusan' => 'Informatika',
'semester' => array (1, 3)
);
$result = print_r($siswa, true);
echo '<pre>'; print_r($result); echo '</pre>';
/** Hasil
Array
(
[nama] => Array
(
[0] => Alfa
[1] => Beta
[2] => Charlie
)
[jurusan] => Informatika
[semester] => Array
(
[0] => 1
[1] => 3
)
) */
IV. Fungsi Var_Dump Pada PHP
Sama seperti yang lain, fungsi var_dump
digunakan untuk mencetak output ke browser, lebih tepatnya mengetahui informasi pada suatu nilai variabel.
var_dump
merupakan fungsi, sehingga dalam penulisannya, kita harus menggunakan tanda kurung.
print_r
, var_dump
ini digunakan hanya untuk proses debugging, dimana kita ingin mengetahui struktur informasi (nilai dan tipe data) dari suatu variabelTidak seperti print_r
, pada var_dump
, kita tidak dapat secara langsung menyimpan output dari var_dump
, melaikan harus menggunakan cara lain seperti menggunakan output buffering.
Contoh penggunaan var_dump
<?php
$nama = 'Agus';
var_dump ($nama); // Hasil: string(4) "Agus"
$siswa = array(
'nama' => array ('Alfa', 'Beta', 'Charlie'),
'jurusan' => 'Informatika',
'semester' => 1,
1 => 'Jakarta',
2 => 'Surabaya'
);
echo '<pre>'; var_dump($siswa); echo '</pre>';
/** Hasil
array(5) {
["nama"]=>
array(3) {
[0]=>
string(4) "Alfa"
[1]=>
string(4) "Beta"
[2]=>
string(7) "Charlie"
}
["jurusan"]=>
string(11) "Informatika"
["semester"]=>
int(1)
[1]=>
string(7) "Jakarta"
[2]=>
string(8) "Surabaya"
} */
Jika dibandingkan dengan print_r
, maka output dari var_dump
ini lebih susah dibaca, namun memiliki kelebihan yaitu dapat menampilkan tipe data dan panjang data
Kesimpulan
Pada PHP, banyak cara digunakan untuk mencetak output ke browser, diantaranya menggunakan echo
, print
, print_r
, dan var_dump
.
Jika ingin sekedar mencetak output ke browser maka gunakan echo
, jika ingin mengetahui isi variabel untuk proses debugging / development maka gunakan print_r
atau var_dump
jika ingin menampilkan tipe data dan panjang data.
Demikian pembahasan mengenai perbedaan echo
, print
, print_r
, dan var_dump
, semoga bermanfaat
Subscibe Now
Suka dengan artikel di Jagowebdev.com? jangan sampai ketinggalan, segera join ke milis kami untuk update informasi terbaru dari Jagowebdev.com
4 Feedback dari pembaca
terima kasih gan. informasinya sangat bermanfaat…
thank you gaesss
Terima kasih.. sangat mudah dipahami
Sama sama mas…