Skill Level
Intermediate
Categories
Web Development, News
Reading Time
3 minutes, 27 seconds
Technology
PHP
Framework
No framework
Library
PHP-REF
PHP-REF – PHP var_dump dan print_r Yang Lebih Informatif

Debugging merupakan kegiatan yang tidak asing lagi dilakukan oleh programmer bahasa pemograman apapun itu. Kegiatan ini dilakukan untuk menelusuri kode, mencari kesalahan, lalu memperbaiki kesalahan tersebut, seperti untuk mengetahui informasi isi dari array, object, jenis variable dan sebagainya.

PHP tidak memiliki debugger secara bawaan, namun PHP memberikan opsi untuk menggunakan debugger pihak ketiga yang direkomendasikan. Untuk melakukan basic debugging kita dapat menggunakan fungsi yang tersedia pada PHP, yaitu var_dump dan print_r. Kedua fungsi tersebut memiliki tujuan yang sama namun ada sedikit perbedaanya.

var_dump

Fungsi ini menampilkan informasi terstruktur tentang satu atau lebih ekspresi yang menyertakan jenis dan nilainya. Array dan object dieksplorasi secara recrusive dengan nilai-nilai yang terdapat pada setiap element.

print_r

Mirip seperti var_dump, namun fungsi ini tidak meneyertakan jenis dari ekspresi tersebut dan lebih human-readable.

Basic Debugging

Berikut ini adalah contoh sederhana basic debugging yang akan menampilkan isi dari sebuah array menggunakan var_dump.

<?php
// array
$fruits = ['Apple', 'Mango', 'Orange'];
// dump
var_dump($fruits);

Hasil yang akan dikeluarkan seperti berikut:

array(3) {
  [0]=>
  string(5) "Apple"
  [1]=>
  string(5) "Mango"
  [2]=>
  string(6) "Orange"
}

Sekarang kita gunakan fungsi print_r.

<?php
// array
$fruits = ['Apple', 'Mango', 'Orange'];
// dump
print_r($fruits);

Maka hasilnya seperti berikut:

Array
(
    [0] => Apple
    [1] => Mango
    [2] => Orange
)

PHP-REF

PHP-REF merupakan sebuah library by @digitalnature yang memiliki manfaat untuk menggantikan fungsi var_dump dan print_r agar hasil debugging lebih informatif.

Untuk menggunakan PHP-REF kamu perlu meng-install-nya melalui Composer.

composer require digitalnature/php-ref

Lalu, buat sebuah file PHP dan include file vendor/autoload.php.

<?php
require 'vendor/autoload.php';

Penggunaanya, cukup gunakan fungsi r() seperti berikut:

<?php
// array
$fruits = ['Apple', 'Mango', 'Orange'];
// dump
r($fruits);

Maka hasilnya akan kebih bagus.

Atau gunakan rt() untuk menampilkan dengan mode text.

Untuk contoh lain kita akan coba membuat sebuah class untuk di-dump.

<?php
require 'vendor/autoload.php'; 

class Post {
  public function index() {
    // do stuff
  }

  public function create() {
    // do stuff
  }

  public function update() {
    // do stuff
  }

  public function delete() {
    // do stuff
  }
}

r(new Post);

Hasilnya seperti berikut:

Di sana terlihat method-method yang tersedia di dalam class tersebut. Selebihnya kamu dapat kunjungi dokumentasi resmi library ini.

 

Final Words

Selain PHP-REF sebetulnya ada lagi library yang lain yang memiliki manfaat yang sama dan dengan seperti ini kamu akan lebih mudah dalam menelusuri masalah pada kode yang kamu tulis. Semoga bermanfaat.

Referensi:

  • https://github.com/digitalnature/php-ref
  • http://php.net/manual/en/debugger-about.php
  • http://php.net/manual/en/function.var-dump.php
  • http://php.net/manual/en/function.print-r.php

Baca juga post berikut

Integrasi Webmail Dengan Gmail

3 Hal Dasar JavaScript Yang Dapat Kamu L...

Muhamad Nauval Azhar
6 months ago  •  Posted by
Muhamad Nauval Azhar
Junior Programmer

Pecinta Alam (Mbah dukun)

Dapatkan notifikasi untuk setiap artikel baru dan jadilah yang pertama tahu!