Мне было поручено написать несколько расширений для существующего устаревшего приложения PHP.Оригинальное приложение ... эм ... совсем плохо.Это 125 тыс. Строк спагетти-кода, усеянного необработанными операторами SQL и использующими функции mysql_*
.Каждый день я нахожу вещи, которые действительно принадлежат TheDailyWTF.Пока что я планирую сохранить свой новый код как можно более отдельно от прежнего кода.Для доступа к базе данных я планирую использовать Idiorm и Paris , две действительно симпатичные маленькие библиотеки, построенные поверх PDO.
Но как я буду обрабатывать соединения с базой данных?Или как PHP обрабатывает их внутренне?Я беспокоюсь о том, что при использовании PDO при каждом вызове страницы будут открываться два отдельных соединения с базой данных.Один из легального вызова mysql_connect()
и один из PDO.Это правда, или PHP просто будет использовать одно и то же соединение в фоновом режиме?Есть ли способ заставить PDO и устаревшие функции mysql_*
использовать одно и то же соединение с базой данных?Имеет ли это вообще какое-то значение? Я открываю два соединения при каждой загрузке страницы (примечание: приложение не использует транзакции)?
Я немного сомневаюсь в том, чтобы просмотреть эти 125К строк кода спагетти и заменить всеmysql_*
работает с чем-то другим.Я хочу как можно меньше прикоснуться к исходному коду и не ломать себе голову.
Заранее благодарен за любой совет.