Перемещение из mysql в mysqli или pdo?

Дубликат: mysqli или PDO – каковы плюсы и минусы?

Я ищу, чтобы переместить веб-сайт из mysql в mysqli или pdo как в основном в инструмент обучения, но также и по мере увеличения производительности.

Я прочитал http://php.net/manual/en/mysqli.overview.php, и мне кажется, что оба они будут соответствовать моим потребностям, но это не сильно зависит друг от друга.

В настоящее время сайт использует преимущественно не ориентированный на объект код, но у меня есть опыт работы с OO на других языках. Огромное большинство запросов – это простые сложные команды выбора с очень небольшим количеством обновлений / вставок. Что вы предлагаете как наиболее полезное как из моего собственного образования, так и для этого конкретного сайта?

Если вам нужна дополнительная информация, пожалуйста, дайте мне знать.

Благодарю.

Solutions Collecting From Web of "Перемещение из mysql в mysqli или pdo?"

PDO Pro:

  • Родной на PHP с 5.x
  • Поддерживает именованные параметры, а не числовые индексы.
  • Такая библиотека абстракции поддерживает несколько различных RDBM

Mysqli Con:

  • Имеет проблемы с надлежащим хранением и извлечением больших объектов в базе данных.
  • Нет поддержки названных параметров.

В противном случае обе библиотеки в основном разные вкусы одного и того же. Оба они имеют функции для указания параметров и поддерживают параметры с параметризованными запросами.

Если ни один из приведенных выше аргументов не повлияет на вас, тогда перейдите к любой библиотеке, которую вы предпочитаете, в зависимости от ее синтаксиса, стиля и т. Д.

Я не считаю, что PDO даст вам какое-то увеличение производительности, но это дает вам эти две очень привлекательные долгосрочные выгоды:

  • вы можете масштабировать свое приложение, чтобы использовать другие базы данных с помощью всего лишь нескольких изменений кода
  • библиотека PDO имеет большую часть безопасности, встроенной в

Если вы не понимаете преимуществ для # 1 и # 2, тогда просто придерживайтесь проверенной и истинной библиотеки mysql ( вы хотя бы используете mysql_real_escape_string, хотя, правильно )?

Если бы я изучал новую библиотеку баз данных PHP, я считаю, что PDO – это путь, особенно если вы создаете веб-приложение, которое может использоваться в различных системах, отличных от вашего собственного сервера.

С http://www.php.net/manual/en/mysqli.overview.php :

Хотя у PDO есть свои преимущества, такие как простой, простой и портативный API, его основным недостатком является то, что он не позволяет использовать все расширенные функции, доступные в последних версиях MySQL-сервера. Например, PDO не позволяет вам использовать поддержку MySQL для нескольких операторов.

PDO предлагает отличную безопасность, чем другие без особых проблем, но для перехода я бы предложил вам перейти на mysqli, так как это быстрее, проще, чем PDO, и большинство api / syntax совершенно одинаковы со старым расширением mysql

См. Здесь (прокрутите ниже) для быстрого сравнения:
PHP и MySQLi

Изменить: выглядит так же, как вы читали раньше, извините

При создании моей библиотеки ORM и абстракции я использовал MySQLi и PDO, чтобы увидеть, какой из них лучше работает. MySQLi был быстрее – но этого недостаточно, чтобы сделать выбор на основе этого.

Одна вещь, с которой MySQLi / MySQL / SQLite или любая другая независимая библиотека имеет над PDO, заключается в том, что они возвращают количество строк, найденных в результате, что часто помогает протестировать любые результаты вообще. Между тем, в PDO вы либо получаете результаты fetchAll (), либо count (), либо запускаете запрос count перед тем, как просмотреть количество результатов. Поэтому вам придется адаптироваться для решения этой проблемы по-разному.

О, и я в конечном итоге выбираю PDO над MySQLi.