Intereting Posts
Является ли jquery мешающим php? Включить короткие теги PHP, используя .htaccess Предварительно упакованный Redbean извлекает только одну (последнюю) строку Зачем мне нужно использовать многие функции очистки, чтобы очистить выходной буфер (используя wamp, PHP) Странное поведение оператора ++ в PHP 5.3 Как использовать str_replace () для удаления текста определенное количество раз только в PHP? nginx clean url с дружественными именами файлов seo Не удается удалить php set cookie Получение данных POST из вызова AJAX на PHP нечувствительный к регистру поиск в mongodb для имен пользователей в php Symfony security возвращает 401 ответ вместо перенаправления Нужен PHP-скрипт для распаковки и прокрутки зашифрованного файла Получить все изображения из определенного альбома Facebook с помощью Graph API PHP SDK Экспорт pdf-документа с использованием php с помощью dompdf Как удалить одиночные символьные слова из строки с preg_replace

Laravel 5.3 – htmlspecialchars () ожидает, что параметр 1 будет строкой

Я новичок в laravel, и мне это нравится. Во время работы над проектом в социальных сетях я получил эту ошибку: htmlspecialchars() expects parameter 1 to be string, object given (View: C:\wamp64\www\histoirevraie\resources\views\user\profile.blade.php)

Я проверил некоторые вопросы на этом сайте, но я не нашел вопроса, который решает мою проблему.

это мой profile.blade.php :

 <ul class="profile-rows"> <li> <span class="the-label">Last visit: </span> <span class="the-value mark green">{{ \Carbon\Carbon::createFromFormat('Ymd H:i:s', $user->lastVisit)->diffForHumans(\Carbon\Carbon::now())}}</span> </li> <li> <span class="the-label">Member since: </span> <span class="the-value mark light-gray">{{ $user->created_at->format('F Y') }}</span> </li> <li> <span class="the-label">Profile views: </span> <span class="the-value mark light-gray">5146</span> </li> <li> <span class="the-label">Living In: </span> <span class="the-value">{{ $user->town }}</span> </li> <li> <span class="the-label">Website: </span> <span class="the-value"><a href="{{ url($user->website) }}">{{ $user->website }}</a></span> </li> </ul> 

Вся информация о пользователе предоставляется контроллером:

 public function index($username){ $user = User::where('username', $username)->first(); return view('user.profile', compact('user')); } 

Пожалуйста, помогите мне решить эту проблему!

Solutions Collecting From Web of "Laravel 5.3 – htmlspecialchars () ожидает, что параметр 1 будет строкой"

Я думаю, ваш $user->website пуст / пуст.

Если вы посмотрите на вспомогательный метод url() , Laravel вернет экземпляр UrlGenerator если $path равно null.

Поэтому в вашем случае, если $user->website пуст, вы получите UrlGenerator и, следовательно, свою ошибку о том, что htmlspecialchars получает объект.

Одним простым решением было бы обернуть чек html с помощью проверки:

 @if($user->website) <li> ... </li> @endif 

В моем случае я использовал функцию внутри файла blade-файла (например, $ brand-> products ()), и он возвращал массив, поэтому я видел сообщение.

когда я изменил свой код и вернул строку, ошибка исчезла.