In the laravel framework we can use blade to add PHP code in html file.
We are using both {{ }}
and {!! !!}
syntax in blade files of Laravel.
What is the difference between them?
问题:
回答1:
Blade {{ }} statements are automatically sent through PHP's htmlentities function to prevent XSS attacks.
If you pass data from your Controller to a View with some HTML styling like:
$first = "<b>Narendra Sisodia</b>";
And it is accessed, within Blade, with {{ $first }}
then the output'll be:
<b>Narendra Sisodia</b>
But if it is accessed with {!! $first !!}
then the output'll be:
Narendra Sisodia
回答2:
If you don't want the data to be escaped then use {!! !!}
else use {{ }}
.
回答3:
from the documentation: https://laravel.com/docs/5.1/blade
By default, Blade {{ }}
statements are automatically sent through PHP's htmlentities function to prevent XSS attacks. If you do not want your data to be escaped, you may use the following syntax:
Hello, {!! $name !!}.
回答4:
To escape data use
{{ $data }}
If you don't want the data to be escaped use below
{!! $data !!}
回答5:
Blade {{ }} statements are automatically sent through PHP's htmlentities function to prevent XSS attacks.
You can see more here:https://laravel.com/docs/master/blade