본문 바로가기
개발/라라벨 Laravel

[라라벨 Laravel] Blade 에서 태그를 그대로 표현할 때

by 언제나초심. 2019. 3. 26.
반응형

blade 에서 호출 할 때는


보통 {{ ~~ }} 와 같이 호출하는데, escape 을 안 하고 그냥 그대로 보여주고 싶을 때에는 (주로 textarea 에서 사용) {!! $text !!} 와 같이 표현한다.



raw text 를 표출할 때 @{{ 블라블라 }} 로 사용하라고 하는데...


텍스트 내용 중에 {{ }} 와 같은 구문이 있어서, blade 구문과 혼동될 경우에 사용하는 것으로 보인다.



blade 의 {{ }} 구문은 기본적으로, htmlspecialchars 를 호출한다고 한다.



그러니까, Laravel 은 저장하는 단계에서는 XSS 를 방지하는 노력을 하지 않는다.


보여지는 단계에서만 {{ }} 를 통해서 방지하는 정도 (음...이게 더 맞는 방법인가?)


에디터를 사용했다면, 에디터 에서 변경된 값을 넣기 때문에, 보여지는 화면에서 오히려 {!! 을 사용하게 됨. 저장할 때 escape 하는 방식.


참고

 - https://laravel.com/docs/5.0/templates


반응형