PHP: Чи завантажений SimpleXML?

Depositphotos 11843590 с

Є кілька побудованих плагінів, для яких потрібні PHP5 + і SimpleXML. SimpleXML - це набагато простіший та ефективніший метод розбору відповідей XML APIs. Проблема, однак, полягає в тому, що я отримую по кілька електронних листів на день або тиждень із запитом, чому користувач не може завантажити програму, і це призводить до помилок.

Очевидно, моїх повідомлень про плагіни та на сторінках проекту було недостатньо, тому я вчинив правильно і додав функціональність обох плагінів для перевірки завантаження розширення SimpleXML.

Функція PHP для перевірки завантаження розширення SimpleXML:

функція isSimpleXMLLoaded () {$ array = array (); $ array = get_loaded_extensions (); $ result = false; foreach ($ масив як $ i => $ value) {if (strtolower ($ value) == "simplexml") {$ result = true; }} повернути $ результат; }

Тепер, у межах функцій, які використовують SimpleXML, я можу просто переконатися, що він завантажений, перш ніж я дійсно спробую виклик SimpleXML. Якщо

if (! isSimpleXMLLoaded ()) {echo "Розмістіть свій сайт в іншому місці!"; повернення; }

Я знаю, що у мене є кілька гуру PHP, які стежать за моїм блогом, дайте мені знати, як я це зробив! Я випустив незначні оновлення обох Плагінів для використання цього методу.

6 Коментарі

  1. 1

    Привіт Дугу,

    Я помітив одну помилку, яка, ймовірно, не викликає помилки.

    if ($ value = “SimpleXML”) {$ result = true; }

    повинно бути

    if ($ value == “SimpleXML”) {$ result = true; }

    Хоча заради безпеки. Я віддаю перевагу.

    if (strtolower ($ value) == “simplexml”) {$ result = true; }

    Ви також можете використовувати 'extension_loaded', яке приймає ім'я розширення для перевірки (з урахуванням регістру).

    $ loaded = extension_loaded (“SimpleXML”);

    Повертає TRUE або FALSE.

    PS Не пий каву сам, але я можу поставити кнопку "купи мені коробку пампушок" 🙂

    • 2

      Підніми цю кнопку пампушки, Нік! Ти рятівник! Смішним є те, що (за винятком strtolower), я насправді мав запущений зразок коду і використовував правильну оцінку. Мабуть, було пізно, бо до того моменту, коли я його вклав, я зіпсував це!

      Я змінив код та публікацію в блозі. Питання: Якась перевага одного над іншим? Думаю, extension_loaded - набагато чистіший та швидший спосіб вирішення цього!

      Дякую Ніку!

  2. 4

    yum встановіть php55-xml.x86_64, щоб встановити simpleXML для php 5.5.11

    Запуск транзакції
    Встановлення: php55-xml-5.5.11-1.el6.x86_64 1/1
    Перевірка: php55-xml-5.5.11-1.el6.x86_64 1/1

    а потім встановлено
    /usr/lib64/php/modules/simplexml.so

  3. 5

Що ви думаєте?

Цей сайт використовує Akismet для зменшення спаму. Дізнайтеся, як обробляються ваші дані коментарів.