Я прошу прощения, если этот вопрос является дубликатом. Сначала я прочитал многие другие mysqli вопросы , но ни один из них не был точным дубликатом.
Я старший разработчик проекта, над которым моя компания работает 4+ года. Это большая фреймворковая система PHP MVC с модулями для системы CMS, системы электронной коммерции и многого другого. Всего мы говорим о 1583 файлах и ~ 407 912 строках кода (исключая комментарии и пустые строки).
В системе используется собственная система, подобная активной записи, которую мы создали с нуля, и она используется практически в каждом модуле системы. Он был построен с использованием старых функций PHP MySQL, а не новых функций MySQL или PDO. PDO немного излишним, потому что, как компания SaaS, мы контролируем инфраструктуру и будем использовать MySQL в обозримом будущем, поэтому нам не нужна абстракция базы данных. Но ответы здесь, а также в документации по PHP используют все более и более сильный язык в отношении mysql vs mysqli:
http://ca3.php.net/manual/en/mysqli.overview.php:
Примечание
Если вы используете MySQL версии 4.1.3
или позже настоятельно рекомендуется
что вы используете расширение MySQL
вместо этого.
Поскольку мы использовали старые функции mysql, новый код был тщательно проверен на наличие ошибок внедрения SQL. Это было проверено нашими сотрудниками, так что, возможно, мы могли что-то пропустить, но я уверен, что мы покрыты Поскольку система использует функции mysql в коде, новый код должен следовать этому соглашению; мы не можем перейти на MySQL, когда мы идем ...
Есть ли преимущество в переписывании всей системы, чтобы вместо нее использовать mysqli? Или лучше спросить, будет ли выгода стоить довольно больших затрат? Или это то, что мы должны учитывать, когда мы делаем большую переделку (в следующей основной версии)? Я придерживаюсь мнения, что если это не сломано, не чинить это ... но я просто упрямый?