Почему Magic Quotes был удален из PHP 5.4?

Каковы технические причины, по которым Magic Quotes был удален из PHP 5.4?

Из PHP документов

Спектакль

Производительность Поскольку не каждая часть экранированных данных вставляется в базу данных, при экранировании всех этих данных происходит потеря производительности. Простой вызов экранирующих функций (таких как addlashes ()) во время выполнения более эффективен. Хотя php.ini-development включает эти директивы по умолчанию, php.ini-production отключает их. Эта рекомендация в основном из-за соображений производительности.

Есть ли другая причина, почему Magic Quotes был удален из PHP?

1 ответ

Решение

Это очень хорошо объясняется, почему устарел в руководстве Чао

Цитирующий комментарий Чао

Причина, по которой магические цитаты не рекомендуются, заключается в том, что универсальный подход к экранированию / цитированию неверен и совершенно опасен. Разные типы контента имеют разные специальные символы и разные способы избежать их, и то, что работает в одном, имеет побочные эффекты в других местах. Любой пример кода, здесь или где-либо еще, который притворяется, что работает как магические кавычки - или выполняет аналогичное преобразование для HTML, SQL или чего-либо еще в этом отношении - также имеет неправильный заголовок и аналогично опасен.

Магические цитаты не для безопасности. Они никогда не были. Это удобная вещь - они существуют, так что нуб PHP может шарить и в конечном итоге писать некоторые запросы mysql, которые вроде бы работают, без необходимости изучать правильное экранирование / цитирование данных. Они предотвращают несколько случайных синтаксических ошибок, как и их работа. Но они не остановят злонамеренного и полусознательного злоумышленника от взлома базы данных PHP noob. И этот бедный нуб, возможно, никогда даже не узнает, как или почему его база данных исчезла, потому что магические кавычки (или его изящная функция "я собираюсь избежать всего") дали ему ложное чувство безопасности. Ему никогда не приходилось учиться, как по-настоящему справляться с ненадежным вводом.

Также хорошо читать Википедию: Волшебные цитаты Критика

Другие вопросы по тегам