Дмитрий Евграфович: Параметры приходят в массиве для удобной передачи с помощью AJAX, а так как массив именованный, и каждому параметру соответствует свое имя, то можно сказать, что это то же самое, что и набор переменных.
Astatroth: Провел некоторое исследование - выяснил, что сервер кеширует некоторые скрипты в файле "Storage\Framework\Compiled.php". При удалении этого файла возникает уже другая ошибка, по предварительной версии, из-за доступности метода "directive" только в Laravel 5.1. Чуть позже обновлю и сообщу здесь о результате.
Andrzej Wielski, Станислав Почепко: 7000 символов - 7kb. 7 * 20 = 140kb (без разметки). Или я что-то не так считаю? Про MySQL я уже понял, теперь вопрос рассматриваем относительно PHP/JS.
Браузеру передавать весь текст смысла мало, так как (о чем я не писал выше) сокращенный текст комментария у меня выводится без разметки, а разметка загружается во всплывающем окне при нажатии на кнопку "подробнее". Это требование уже не от меня идет. Вряд ли было бы оптимальным решением скачивать 2 варианта - сокращенный текст (около 1000 символов) и полный, со всей разметкой.
Тут, наверно, сложный вопрос, требующий большого опыта: что будет быстрее работать и меньше нагружать сервер - скачивать сразу все, и потом во всплывающем окне отображать уже скачанное, не обращаясь лишний раз к серверу или скачивать только то, что нужно (не каждый же будет открывать полные версии всех комментариев), и затем по каждому запросу докачивать полные версии и удалять после просмотра.
Andrzej Wielski: Интересно. Что вы подразумеваете под фразой "плохо работает с UTF-8"? И что значит "медленно работает"? В каких ситуациях оптимальнее использовать его?
Я уже писал выше, что это не совсем комментарии, а, скорее, что-то вроде рецензий на kinopoisk, только еще более объемные, вплоть до 5000 символов, плюс еще HTML-разметка, так что 6-7000, думаю, вполне наберется. На странице отображаться будет, в среднем, не менее 30 таких "комментариев".
Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'comment, 30) as comment from `comments` where `comments`.`post_id` = ? order ' at line 1 (SQL: select id, created_at, SUBSTRING(comment, 30) as comment from `comments` where `comments`.`post_id` = 2 order by `id` desc)
Станислав Почепко: Комментарии могут быть очень большими (3-5000 символов). В общем-то, это не совсем комментарии, скорее, что-то вроде рецензий на kinopoisk. На странице их присутствует довольно много, как уже написал выше. Поэтому загружать все полностью неоптимально.
Nc_Soft: Спасибо, с использованием "return", и правда, работает без перенаправления. Думаю, ход мыслей моего ответа будет полезен для понимания финального варианта.
Вместе с проверкой на тип запроса можно выводить один результат для AJAX-запросов и другой - для обычных.