Laravel 커스텀 헬퍼 함수 추가

Jmnote (토론 | 기여)님의 2018년 5월 21일 (월) 01:48 판 (→‎개요)

1 개요

Best practices for custom helpers on Laravel 5
Laravel 커스텀 헬퍼 함수 추가
  • 헬퍼 함수는 아무데서나 사용할 수 있어 매우 편리하다.
  • 단, 헬퍼 함수는 항상[1] 적재되어 부담이 될 수 있으므로 불필요하게 많이 사용하는 것은 지양하자.[2]
  • 원래 헬퍼 함수는 Illuminate/Support/helpers.php에 있는데, 거기에 직접 추가해도 되지만 프레임워크 유지보수 차원에서 직접 수정하지 않는 것이 바람직하다.
  • app 폴더에 추가하자.

2 app/helpers.php 파일 신규 작성

root@zetawiki:/var/www/laravel# vi app/helpers.php
function greet() {
	return 'Hello, World!';
}

3 composer.json 수정

  • composer.json 파일의 autoload 블럭에 추가
root@zetawiki:/var/www/laravel# vi composer.json
... (생략)
	"autoload": {
		"classmap": [
			"database"
		],
		"psr-4": {
			"App\\": "app/"
		},
		"files": [
			"app/helpers.php"
		]
	},
... (생략)

4 composer 실행

  • composer dump-autoload 실행
root@zetawiki:/var/www/laravel# composer dump-autoload
Generating autoload files

5 테스트

  • 아무 blade 파일에서나 테스트해보자.
<div>{{ greet() }}</div>
→ 브라우저에서 Hello, World! 가 잘 나온다...

6 같이 보기

7 참고

  1. 모든 HTTP 요청에 대해
  2. 헬퍼 함수의 대안으로는 정적 클래스 또는 싱글턴 클래스 등을 생각해볼 수 있다.
문서 댓글 ({{ doc_comments.length }})
{{ comment.name }} {{ comment.created | snstime }}