2013-08-30 3 views
5

blade 템플릿 엔진에서 {{ }} 출력이 자동으로 위생적으로 사라지는 것을 웹에서 읽었습니다.laravel 4 - lanvel의 Input :: get() (e() vs HTML :: entities) 4

그러나 컨트롤러에서 echo을 살균 처리하여 Input::get을 보내고 싶습니다. 그것을 수행하는 가장 좋은 방법은 무엇입니까 (e()htmlentities 또는 HTML::entities 또는 다른 것입니까?).

답변

12

나는 블레이드 템플릿 엔진에서 {{}} 자동으로 출력물을 위생 처리한다는 내용의 웹을 읽었습니다.

올바르지 않습니다. 당신은 출력을 살균하기 위해 세 가지 (3) 중괄호를 사용할 필요가 {{{ }}}

그러나, 나는 소독 입력을 에코하려면 :: 컨트롤러에서 무엇을 얻을.

당신은 당신의 컨트롤러에서 출력이 안됩니다 - 당신은 단지를 htmlentities 또는 HTML :: 단체 또는 인보기 그것은 (예를 (할 수있는 가장 좋은 방법은 무엇

)에서 수행해야 다른 것)? : -

e() 모든 것을 {{{ }}}가하고 실제로 어쨌든 {{ e() }}의 equilivant에

편집을 변화하고, 백엔드에 Laravel 4

에서 할 수있는 가장 좋은 방법입니다 Laravel 5에서 {{ }}{{{ }}}은 모두 출력을 sanitize합니다. Laravel 5에서 미량 출력이 필요한 경우 - {!! !!}

+0

여기를 읽었습니다 : [출력에서 이스케이프 처리] (http://www.arrowdesign.co.uk/blog-content/escaping-output) -laravel) – h4k1m

+3

Laravel 4 베타 버전에서 잠시 동안 그런 식 이었지만 블로그가 바뀌 었습니다. 이제 블로그가 오래되고 잘못되었습니다. – Laurence

+0

고마워, 알았다! – h4k1m