PHP: Je li SimpleXML opterećen?

Depositphotos 11843590 s

Postoji nekoliko dodataka koje sam izgradio za koje su potrebni PHP5 + i SimpleXML. SimpleXML je mnogo lakša i efikasnija metoda raščlanjivanja XML odgovora APIs. Problem je, međutim, u tome što bih svakodnevno ili u tjednu dobivao nekoliko e-mailova s ​​pitanjem zašto korisnik ne može učitati program, što je rezultiralo pogreškama.

Očigledno, moja obavještenja na dodacima i na projektnim stranicama nisu bila dovoljna, pa sam učinio pravu stvar i dodao oba funkcionala kako bih provjerio da li je proširenje SimpleXML učitano.

PHP funkcija za provjeru učitavanja ekstenzije SimpleXML:

funkcija jeSimpleXMLLoaded () {$ array = array (); $ array = get_loaded_extensions (); $ rezultat = netačno; foreach ($ niz kao $ i => $ value) {if (strtolower ($ value) == "simplexml") {$ result = true; }} vrati $ rezultat; }

Sada, unutar funkcija koje koriste SimpleXML, mogu jednostavno osigurati da se učita prije nego što stvarno pokušam SimpleXML poziv. Ako

if (! isSimpleXMLLoaded ()) {echo "Hostirajte svoju web lokaciju negdje drugdje!"; povratak; }

Znam da imam neke PHP gurue koji prate moj blog, javi mi kako sam to učinio! Objavio sam manja ažuriranja oba dodatka kako bih koristio ovu metodu.

6 Komentari

  1. 1

    Zdravo Doug,

    I did notice a one bug which probably doesn’t raise an error.

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

    treba biti

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

    Although for safety sake. I prefer.

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

    You could also use ‘extension_loaded’ which takes the extension name to check (case sensitive).

    $loaded = extension_loaded(“SimpleXML”);

    Returns TRUE or FALSE.

    P.S. Don’t drink coffee myself but I may put a ‘buy me a box of donuts’ button 🙂

    • 2

      Get that donut button up, Nick! You’re a livesaver! What’s funny is that (minus the strtolower), I actually did have my sample code running and utilizing the right evaluation. It must have been late because by the time I put it in, I messed it up!

      I’ve modified the code and the blog post. Question: Any advantage of one over the other? I guess the extension_loaded is a much cleaner and quicker way of dealing with this!

      Hvala Nick!

  2. 4

    yum install php55-xml.x86_64 to install simpleXML for php 5.5.11

    Running Transaction
    Installing : php55-xml-5.5.11-1.el6.x86_64 1/1
    Verifying : php55-xml-5.5.11-1.el6.x86_64 1/1

    and then it installed
    /usr/lib64/php/modules/simplexml.so

  3. 5

Šta ti misliš?

Ova stranica koristi Akismet kako bi smanjila neželjenu poštu. Saznajte kako se podaci vašeg komentara obrađuju.