Данная возможность была
объявлена УСТАРЕВШЕЙ, начиная с PHP 5.3.0 и
была УДАЛЕНА в PHP 5.4.0.
Переносимость
Возможность присваивания значений on или off сказывается на
переносимости. Используйте get_magic_quotes_gpc()
для проверки и пишите код соответствующим образом.
Производительность
Так как не все экранируемые данные заносятся в базу данных, то
присутствует потеря производительности при экранировании всех
данных. Простой вызов экранирующих функций (например,
addslashes()) во время выполнения более
эффективен.
Хотя в php.ini-development эти директивы
по умолчанию включены, в php.ini-production
они отключены. Эта рекомендация соответствует, в основном, причинам
производительности.
Неудобство
Так как не все данные должны быть экранированы, то часто неприятно
видеть экранированные данные там, где этого не должно быть.
Например, при отправке письма из формы можно наблюдать связку \'
в самом письме. Для того, чтобы это исправить, требуется дополнительно
использовать stripslashes().