Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Por que não devo usar funções mysql_* em PHP?


A extensão do MySQL:
  • Não está em desenvolvimento ativo
  • Está oficialmente obsoleto a partir do PHP 5.5 (lançado em junho de 2013).
  • Foi removido inteiramente a partir do PHP 7.0 (lançado em dezembro de 2015)
    • Isso significa que a partir de 31 de dezembro de 2018 ele não existe em nenhuma versão suportada do PHP. Se você está usando uma versão do PHP que o suporta, você está usando uma versão que não corrige os problemas de segurança.
  • Não possui uma interface OO
  • Não suporta:
    • Consultas assíncronas e sem bloqueio
    • Declarações preparadas ou consultas parametrizadas
    • Procedimentos armazenados
    • Declarações múltiplas
    • Transações
    • O método de autenticação de senha "novo" (ativado por padrão no MySQL 5.6; obrigatório no 5.7)
    • Qualquer uma das novas funcionalidades do MySQL 5.1 ou posterior

Como está obsoleto, usá-lo torna seu código menos à prova de futuro.

A falta de suporte para instruções preparadas é particularmente importante, pois elas fornecem um método mais claro e menos propenso a erros de escapar e citar dados externos do que escapar manualmente com uma chamada de função separada.

Veja a comparação de extensões SQL .