Laravel

[Laravel] Tinker 대화형 코드 실행 사용법

먹세 2021. 10. 6. 07:26

PHP 5.1 부터 php -a 명령어로 대화형 인터프리터 실행 가능

$ php -a
Interactive mode enabled

php > echo 1;
1
php > echo 'aa';
aa

 

 

그러나 라라벨같은 복잡한 프레임워크에서 입출력을 테스트 하기에는 유용하지 않다.

그래서 나온것이 REPL(Read-Evaluate-Print Loop) 이다.

하나의 입력을 받아서 처리하고 결과를 반환하는 프로그램이다.

Laravel5 부터 사용 가능.

php artisan tinker 로 사용 가능

 

$ php artisan tinker
Psy Shell v0.10.8 (PHP 8.0.10 — cli) by Justin Hileman

>>> $date = Carbon\Carbon::now()
=> Carbon\Carbon @1633472648 {#3472
     date: 2021-10-05 22:24:08.337044 UTC (+00:00),
   }
   
>>> config('database.connections.mysql')
...
...

위 처럼 tinker는 라라벨의 모든 기능을 사용할 수 있다.

view 클래스도 생성 가능하고 helper.php 에 있는 헬퍼함수들도 사용 가능하다.

 

tinker는 bash 쉘의 readline 기능을 지원하므로 탭 키를 통해 명령어를 자동완성 해주는 기능도 지원 한다.

 

반응형