Sihirli Tırnaklar Neden Kullanılmamalıdır?

Uyarı

Bu özelliğin kullanımı PHP 5.3.0'dan beri ÖNERİLMEMEKTEDİR ve PHP 6.0.0'da tamamen KALDIRILMIŞTIR. Bu özelliğe kesinlikle güvenmemelisiniz.

  • Taşınabilirlik. Bu özelliğin açık veya kapalı olmasının taşınabilirliği etkilediği varsayılır. Böyle bir durumun varlığını get_magic_quotes_gpc() ile denetledikten sonra kodlamayı buna uygun yapın.
  • Başarım. Bir veritabanına yerleştirilen her veri parçası öncelenmediğinden, tüm bu verinin öncelenmeye çalışılması başarım kaybına sebep olur. Bu bakımdan (addslashes() gibi) önceleme işlevlerinin çalışma anında çağrılması daha verimli olur. php.ini-development bu yönergeleri öntanımlı olarak etkin kılsa da php.ini-production bunu etkisiz kılar. İkincisinin sebebi tamamen başarım ile ilgilidir.
  • Elverişsizlik. Tüm verinin öncelenmesi gerekmediğinden, gerekmediği halde verinin öncelenmiş olduğunu görmek çoğunlukla can sıkıcıdır. Örneğin bir formdan gönderilen epostada bir sürü \' görmek. Bu durumu düzeltmek için aşırı miktarda stripslashes() işlevi kullanmak gerekebilir.