PHP: es carrega SimpleXML?

Depositphotos 11843590 s

Hi ha un parell de connectors que he construït que requereixen PHP5 + i SimpleXML. SimpleXML és un mètode d’anàlisi de respostes XML molt més senzill i amb un millor rendiment Programess. El problema, però, és que rebria uns quants correus electrònics al dia o a la setmana preguntant-me per què l’usuari no podia carregar el programa i donava lloc a errors.

Pel que sembla, els meus avisos als connectors i a les pàgines del projecte no eren suficients, així que vaig fer el correcte i vaig afegir funcionalitat als dos connectors per verificar que l’extensió SimpleXML estigui carregada.

Funció PHP per comprovar que l'extensió SimpleXML està carregada:

funció isSimpleXMLLoaded () {$ array = array (); $ array = get_loaded_extensions (); $ resultat = fals; foreach ($ array com a $ i => $ valor) {if (strtolower ($ value) == "simplexml") {$ result = true; }} retorna $ resultat; }

Ara, dins de les funcions que utilitzen SimpleXML, només puc assegurar-me que es carregui abans de provar la trucada SimpleXML. Si

if (! isSimpleXMLLoaded ()) {echo "Allotgeu el vostre lloc en un altre lloc!"; tornar; }

Sé que tinc alguns gurus de PHP que mantenen un ull al meu bloc, feu-m'ho saber. He publicat actualitzacions menors als dos connectors per utilitzar aquest mètode.

6 Comentaris

  1. 1

    Hola Doug,

    Vaig notar un error que probablement no genera cap error.

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

    ha de ser

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

    Tot i que per seguretat. Prefereixo.

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

    També podeu utilitzar 'extension_loaded' que pren el nom de l'extensió per comprovar (distingeix entre majúscules i minúscules).

    $ carregat = extensió_carregat ("SimpleXML");

    Retorna TRUE o FALSE.

    PD. No prengueu cafè jo mateix, però és possible que posi el botó "Compreu-me una caixa de bunyols" 🙂

    • 2

      Aconsegueix aquest botó de rosquilla, Nick! Ets un salvavides! El que és curiós és que (menys el strtolower), realment tenia el codi de mostra en funcionament i utilitzava l’avaluació adequada. Deu ser tard perquè en el moment que el vaig posar, el vaig desordenar.

      He modificat el codi i la publicació del bloc. Pregunta: Algun avantatge de l’un sobre l’altre? Suposo que l’extensió_carregada és una manera molt més neta i ràpida d’afrontar-ho.

      Gràcies Nick!

  2. 4

    instal·leu php55-xml.x86_64 per instal·lar simpleXML per a php 5.5.11

    Transacció en curs
    Installing : php55-xml-5.5.11-1.el6.x86_64 1/1
    Verifying : php55-xml-5.5.11-1.el6.x86_64 1/1

    i després es va instal·lar
    /usr/lib64/php/modules/simplexml.so

  3. 5

Què et sembla?

Aquest lloc utilitza Akismet per reduir el correu no desitjat. Esbrineu com es processa el vostre comentari.