Rozszerzenie mysql jest stare i istnieje od PHP 2.0, wydanego 15 lat temu (!!); który jest zdecydowanie inną bestią niż współczesny PHP, który próbuje pozbyć się złych praktyk z przeszłości. Rozszerzenie mysql jest bardzo surowym, niskopoziomowym łącznikiem do MySQL, który nie ma wielu wygodnych funkcji i przez to jest trudny do zastosowania poprawnie w bezpieczny sposób; dlatego jest to złe dla noobów. Wielu programistów nie rozumie wstrzykiwania SQL, a API mysql jest na tyle delikatne, że trudno jest temu zapobiec, nawet jeśli jesteś tego świadomy. Jest pełen globalnego stanu (np. niejawne przekazywanie połączenia), co ułatwia pisanie kodu, który jest trudny do utrzymania. Ponieważ jest stary, może być nierozsądnie trudny do utrzymania na podstawowym poziomie PHP.
Rozszerzenie mysqli jest dużo nowsze i naprawia wszystkie powyższe problemy. PDO jest również dość nowy i rozwiązuje wszystkie te problemy, a także wiele innych.
Z tych powodów* rozszerzenie mysql zostanie usunięte w przyszłości. W czasach swojej świetności wykonał swoją pracę, raczej kiepsko, ale wykonał to. Czas minął, najlepsze praktyki ewoluowały, aplikacje stały się bardziej złożone i wymagają nowocześniejszego API. mysql jest na emeryturze, żyj z nim.
Biorąc to wszystko pod uwagę, nie ma powodu aby nadal go używać, z wyjątkiem bezwładności.
* To są moje zdroworozsądkowe powody podsumowujące; całą oficjalną historię znajdziesz tutaj:https://wiki.php.net/rfc/mysql_deprecation
Oto cytaty z tego dokumentu: