Utf8 символьная ссылка меняется на случайные значения в Laravel - PullRequest
0 голосов
/ 24 января 2020

В моем веб-приложении на основе Laravel, если пользователь хочет поделиться историей, копируемой из ссылки в браузере, тогда символы utf8 автоматически изменяются на некоторое сочетание случайных чисел и более поздних версий.

Вот ссылка который показывает в браузере: https://www.website.com/a/5-زمین-کی-حفاظتe138529f01d3

Но когда я копирую ссылку и хочу где-то поделиться, она становится https://www.website.com/a/%D8%B2%D9%85%DB%8C%D9%86-%DA%A9%DB%8C-%D8%AD%D9%81%D8%A7%D8%B8%D8%AA-5e138529f01d3

1 Ответ

0 голосов
/ 24 января 2020

Поскольку URL-адреса часто содержат символы вне набора ASCII, URL-адрес необходимо преобразовать в действительный формат ASCII.

Это не случайное значение, это формат ASCII, вы можете используйте urlencode для преобразования не-ASCII в формат ASCII.

urlencode('5-زمین-کی-حفاظتe138529f01d3')

Выходы:

5-%D8%B2%D9%85%DB%8C%D9%86-%DA%A9%DB%8C-%D8%AD%D9%81%D8%A7%D8%B8%D8%AAe138529f01d3
...