var_dump 는 이제 그만! 예쁘고 편리한 symphony VarDumper 패키지

VarDumper 는 심포니 프레임워크에 포함된 라이브러리로 PHP 내장 함수인 var_dump() 에 비해 결과를 예쁘고 깔끔하고 가독성 좋게 만들어주므로 디버깅이나 테스트할 때 유용합니다.

라라벨(laravel) 5의 dd, dump 헬퍼 함수는 VarDumper 를 사용하고 있습니다.

 

설치

1. composer 로 설치하는 게 제일 간단합니다. 콘솔에서 다음 composer 명령을 실행합니다.

$ composer require "symfony/var-dumper"

2. 또는 composer.json 의 require 항목에 다음 내용을 추가합니다

"require": { "symfony/var-dumper": "^2.6" },

컴포저 설정이 변경되었으니 composer.update 명령어를 실행합니다.

$ composer update

 

사용

기존 var_dump 대신 dump() 함수를 사용하면 됩니다. 

src/dump.php
<?php require 'vendor/autoload.php'; $array = [ 'a string' => 'hello world', 'an array' => [ 'email' => 'myaddr@gmail.com', 'name' => 'my name', ], 'an int' => 1, 'a float' => 1.234, 'a boolean' => true, 'an emyty array' => [], 'site' => 'http://lesstif.com', ]; dump($array); ?>

VarDumper 는 콘솔에서 실행할 경우 출력을 칼라로 예쁘게 표시해 주고 웹 서버에서 실행할 경우 HTML 로 출력해 줍니다.

특히 배열의 원소 갯수가 몇 개인지 표시해 주므로 배열 관련 디버깅시에 유용합니다.

 

콘솔에서 실행

$ php src/dump.php

 

웹에서 실행

 

Laravel 의 dump(), dd() 헬퍼 사용

라라벨의 헬퍼 함수중 dump(), dd() 라는 유용한 함수가 있습니다.

이 함수는 심포니의 VarDumper 패키지를 래핑해서 사용이 편리하지만 라라벨에서만 사용할 수 있는 단점이 있으니 라라벨 프로젝트가 아닌 경우 다음 유틸리티 클래스를 사용하면 됩니다.

 

Ref

 

 

Related content