问题
I have got this error in my Laravel
blade template
htmlspecialchars() expects parameter 1 to be string, array given
I have tried to convert the array into string in blade template.
Here is the code
<script>
var value = {{ $sliderImageDataArray }}.toString()
window.MedicPressSliderCaptions = value;
</script>
Where $silderImageDataArray
is the variable and value stored here.
Here is the $silderImageDataArray
value
[{"title":"First title","text":"<p><span id=\"hs_cos_wrapper_module_1498510869515998\" class=\"hs_cos_wrapper hs_cos_wrapper_widget_container hs_cos_wrapper_type_widget_container\" data-hs-cos-general-type=\"widget_container\" data-hs-cos-type=\"widget_container\">First title<\\\/span><\\\/p>\n<p><a class=\"btn btn-secondary\" href=\"http:\\\/\\\/localhost\\\/sencare\\\/book-appoinment\\\/\" target=\"_self\"> Make An Appointment <\\\/a>\\u00a0<a class=\"btn btn-light\" href=\"http:\\\/\\\/localhost\\\/sencare\\\/our-doctors\\\/\" target=\"_self\"> Our Doctors<\\\/a><\\\/p>\n","is_video":false},{"title":"Second","text":"<p><span id=\"hs_cos_wrapper_module_1498510869515998\" class=\"hs_cos_wrapper hs_cos_wrapper_widget_container hs_cos_wrapper_type_widget_container\" data-hs-cos-general-type=\"widget_container\" data-hs-cos-type=\"widget_container\">Second<\\\/span><\\\/p>\n<p><a class=\"btn btn-secondary\" href=\"http:\\\/\\\/localhost\\\/sencare\\\/book-appoinment\\\/\" target=\"_self\"> Make An Appointment <\\\/a>\\u00a0<a class=\"btn btn-light\" href=\"http:\\\/\\\/localhost\\\/sencare\\\/our-doctors\\\/\" target=\"_self\"> Our Doctors<\\\/a><\\\/p>\n","is_video":false}]
回答1:
{{}}
will be converted to echo()
by Blade template engine. And you're trying to echo the array as a string.
You may convert it to JSON:
var value = '{{ json_encode($sliderImageDataArray) }}';
If it's a Laravel collection or a model:
var value = '{{ $sliderImageData->toJson() }}';
来源:https://stackoverflow.com/questions/48962391/htmlspecialchars-expects-parameter-1-to-be-string-array-given-in-laravel