Ответ 1
Основная причина заключается в том, что PHP неуклонно движется в направлении программирования OO.
Нет ничего плохого в использовании функций mysqli_xxx()
, а не эквивалентов ООП; это точно так же, как и код.
Единственная проблема заключается в том, что вы будете получать все больше и больше за кривой с точки зрения того, что люди думают о хорошо написанном PHP-коде.
Стоит отметить, что библиотека PDO, которая считается идеальным для большинства DB-кода в PHP, является OOP-only. У него нет процедурного интерфейса. И также большинство других новых функций, добавленных в PHP в последних нескольких версиях. Если вы хотите использовать PHP в полном объеме, вам все равно нужно знать ООП.
Здесь также говорится о возможности создания класса расширения для вашей БД - что-то вроде этого:
class myDB extends mysqli {
.... your own stuff here to extend and improve the base mysqli class
}
Конечно, вы можете добиться того же, что и с процедурным кодом, но это не так аккуратно, как способ ООП. И, конечно, это актуально только в том случае, если вы действительно хотите расширить класс.
Однако, как первый шаг, просто перейти от mysql_xxx()
к mysqli_xxx()
- отличный старт. Перемещение всего пути к использованию интерфейса OOP было бы еще лучше, но просто переключиться на функции mysqli - это хороший старт.
Использование процедурного интерфейса для начала, безусловно, упростит переход от старых mysql_xx()
функций, поэтому, если переключение на интерфейс ООП является слишком большим скачком в начале, не чувствуйте, что вам нужно делать все это за один раз. Начните с преобразования в процедурные функции mysqli
, а затем переключитесь на методы ООП позже; ни один прыжок не будет таким большим.