Вопрос

Я строю библиотеку для доступа к API экспорта данных Google Analytics. Все данные, которые доступ к библиотеке находится в формате Atom и использует многочисленные различные пространства имен на протяжении. Мои эксперименты с API использовали Simplexml для расставания до сих пор, особенно как все, что я делал, доступа к данным, проведенным в пределах корма.

Теперь я прихожу, чтобы написать библиотеку, мне интересно, будет ли скорость с помощью Simplexml будет адекватной или будет ли повышенная функциональность модуля DOM в PHP в будущем. Я еще не написал много кода для этой части библиотеки, поэтому выбор все еще открыт.

Я прочитал, что модуль PHP DOM может быть лучшим выбором, если вам нужно создать XML DOM на лету или изменять существующий, но я не совсем уверен, что мне все равно нуждается в этой функциональности из-за природы API (например, не толкая данные на сервер). Simplexml, безусловно, проще в использовании, и я видел, как люди говорят, что для чтения только ситуации это все, что вам нужно.

По сути, вопрос в том, что бы вы использовали? Совместимость не будет проблемой, поскольку конфигурация сервера соответствует требованиям приложения. Стоит ли построить библиотеку с PHP DOM в уме или я должен придерживаться симплексел на данный момент?

Обновлять: Вот два примера вида кормов, с которыми я буду иметь дело с:

  1. Счетная подача
  2. Фид данных
Это было полезно?

Решение

Мой взять на него:

Simplexml Pros:

  • Простой
  • Полуинтативный недобрососный код
  • Отлично подходит для чтения / анализа документов

Simplexml Bong:

  • Ужасно для генерации XML.
  • Не хватает гибкости и власти

Дом Плюсы:

  • Чрезвычайно мощный
  • Отлично подходит для генерирования документов
  • Будет знаком, если вы сделали любые другие скрипты DOM (например, в JavaScript)

Дом минусы:

  • Подробный
  • Иногда без необходимости сложно.

Я лично придерживался дому в целом. Это позволит вам куда угодно, нужно идти. Документация более чем адекватна, и хотя ваши руки могут быть болит от всех печамок, вы никогда не будете расстраиваться, думая «Почему это не может просто сделать это??"

Если все, что вам нужно сделать, это прочитать документ или сделать некоторые очень базовые редактирование, то, вероятно, пойти с Simplexml. Для меня, однако, я привык к библиотекам DOM, поэтому я просто использую это везде, и это здорово.

Другие советы

SimplexML идеально способна иметь дело с пространствами имен. В вашем случае вам просто нужно повторять записи, используйте getNameSpaces и пройти аргумент children Способ просить детей с определенным пространством имен.

Это сказано, вы можете использовать DOM, если вы хотите написать 3x код.

Хорошо, если вам нужно изобретать колесо, я бы, вероятно, использовал симплексмл ... или вы могли бы просто использовать Zend_gdata. (если то, что вам нужно там) или продлить Zend_feed_atom. Если это нет. Любая опция должна, вероятно, половина объема работы, которую вам нужно сделать :)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top