@pashulke

Почему нельзя использовать mysql_*() и подобные?

Собственно, вопрос в названии. И что лучше использовать вместо этого?
  • Вопрос задан
  • 2641 просмотр
Решения вопроса 1
FanatPHP
@FanatPHP
Чебуратор тега РНР
Использовать можно. Но не рекомендуется.

Причин две:
  1. из коробки эти функции не поддерживают плейсхолдеры. по этой причине большинство пользователей шарашат свои переменные напрямую в запрос и имеют через это неприличную болезнь. Если допилить собственную реализацию плейсхолдеров, то пользоваться можно.
  2. чувакам из Оракла впадлу поддерживать две библиотеки, и от одной тупо отказались. Поэтому сейчас при попытке обратиться к такой функции выдает ошибку, в 7 версии расширение будет удалено из дефолтной сборки, но будет поддерживаться сообществом. Если сейчас давить ошибки уровня E_DEPRECATED, а в будущем собирать руками (как и любой другой модуль) то пользоваться можно.


Что использовать вместо них, в порядке убывания предпочтительности:
  1. ORM и QueryBuilder от используемого фреймворка, например laravel.com/docs/4.2/eloquent
  2. Нормальный враппер с поддержкой плейсхолдеров, такой как phpfaq.ru/safemysql
  3. Если уж совсем никак не отказаться от привычки работать напрямую с функциями API - то PDO, phpfaq.ru/pdo
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
php.net/manual/en/function.mysql-connect.php

Warning
This extension is deprecated as of PHP 5.5.0, and will be removed in the future. Instead, the MySQLi or PDO_MySQL extension should be used. See also MySQL: choosing an API guide and related FAQ for more information. Alternatives to this function include:
mysqli_connect()
PDO::__construct()
Ответ написан
Комментировать
mzcoding
@mzcoding
Web-Разработка
Устарели. В php 5.5 и выше, удалены. PDO изучай.
Ответ написан
@KIN1991
Python, PHP developer
потому что пацаны из хабра перестанут уважать
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
от 300 000 до 500 000 ₽
07 мая 2024, в 15:47
12000 руб./за проект
07 мая 2024, в 15:10
1500 руб./в час
07 мая 2024, в 15:07
1500 руб./в час