Приведение строки кодирования в UTF-8 - PullRequest
0 голосов
/ 26 сентября 2011

Я создаю свою собственную среду PHP и хочу при каждом запросе преобразовывать каждую переменную get и post в utf8 (я не использую другие кодировки в моем текущем проекте), чтобы мои проекты не получали "Invalid Encoding Attack"или бинарный атак.Я нашел utf8_encode в php.net, но он говорит, что конвертирует ISO-8859-1 только в UTF8.Я хочу знать, стоит ли приводить все к utf8 или это не может иметь ничего общего с безопасностью (я хочу максимально уменьшить дыры в безопасности).

Ответы [ 3 ]

1 голос
/ 26 сентября 2011

Если ваша цель - защитить себя от недопустимых кодовых атак, то перед использованием их следует использовать

mb_check_encoding()

в значениях GET / POST.

Но вам не нужно ничего преобразовывать - например, с помощью mb_convert_encoding (): если вы используете соответствующий тег Content-Type и , указав, что ваша страница находится в UTF-8, вы гарантированно гарантируете, что это нормальнопользователи будут отправлять вам только UTF-8.

1 голос
/ 26 сентября 2011

@ Николай, mb_convert_encoding() твой друг. Посмотрите здесь .

Кроме того, если вы установите кодировку всех веб-страниц в UTF-8, нет необходимости конвертировать вручную. Добавьте это в head раздел каждой страницы:

<meta charset="utf-8" />
0 голосов
/ 26 сентября 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...