Почему мы должны выбрать объект? - PullRequest
1 голос
/ 26 января 2012

Я не имею в виду конкретный драйвер базы данных или около того, но мы, как разработчик PHP, всегда имели возможность использовать либо массивы, либо объект в качестве возвращаемого типа запроса базы данных.

Так, например, мы могли бы получить доступ к столбцу «заголовок» с помощью $array['title'] или $object->title.

Например, встроенные функции mysql PHP mysql_fetch_assoc() и mysql_fetch_object() предоставляют этот выбор.

Я заметил, что объектный путь (как я его назову) намного хуже:

  • Нельзя указывать имена таблиц, которые содержат специальные символы, такие как . или -, и использовать их с объектами.
  • Объект обычно тяжелее массивов
  • У объекта нет всех интересных функций для управления ими, как у массивов
  • Массивы лучше объясняют структуру таблицы, а не цепочку свойств.

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

Почему люди даже выбирают объектный путь как выбор?

Ответы [ 2 ]

3 голосов
/ 26 января 2012
  • Вы можете указать имена таблиц, которые содержат специальные символы, такие как. или -
  • Объект более гибкий, чем массивы
  • У объекта есть все классные функции, которые вы можете себе представить, чтобы управлять ими, вам просто нужно написать несколько из них
  • Массивы не могут точно выражать отношения между таблицами, как сопоставление объектов.
1 голос
/ 26 января 2012

Я в основном использую его, потому что $user->name намного проще для глаз, чем $user['name']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...