PHP: Ar „SimpleXML“ įkelta?

Depositphotos 11843590 s

Yra keli mano sukurti papildiniai, kuriems reikalingi PHP5 + ir SimpleXML. „SimpleXML“ yra daug lengvesnis ir efektyvesnis XML atsakų analizavimo metodas APIs. Vis dėlto problema yra ta, kad per dieną ar savaitę gaudavau kelis el. Laiškus, klausdamas, kodėl vartotojas negali įkelti programos ir dėl to atsirado klaidų.

Akivaizdu, kad mano pranešimų apie įskiepius ir projekto puslapius nepakako, todėl pasielgiau teisingai ir prie abiejų įskiepių pridėjau funkcionalumą, kad patikrinčiau, ar „SimpleXML“ plėtinys yra įkeltas.

PHP funkcija patikrinti, ar „SimpleXML“ plėtinys yra įkeltas:

funkcija isSimpleXMLLoaded () {$ masyvas = masyvas (); $ masyvas = get_loaded_extensions (); $ rezultatas = klaidingas; foreach ($ masyvas kaip $ i => $ reikšmė) {if (strtolower ($ value) == "simplexml") {$ result = true; }} grąžinti $ rezultatą; }

Dabar funkcijose, naudojančiose „SimpleXML“, galiu paprasčiausiai įsitikinti, kad ji įkelta, kol neišbandžiau „SimpleXML“ skambučio. Jei

if (! isSimpleXMLLoaded ()) {echo "Priglobkite savo svetainę kur nors kitur!"; grįžti; }

Žinau, kad turiu keletą PHP guru, kurie stebi mano tinklaraštį, praneškite man, kaip man sekėsi! Išleidau nedidelius abiejų papildinių atnaujinimus, kad galėčiau naudoti šį metodą.

6 komentarai

  1. 1

    Labas Doug!

    Pastebėjau vieną klaidą, kuri tikriausiai nekelia klaidos.

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

    turėtų būti

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

    Nors dėl saugumo. man labiau patinka.

    if (strtolower($value) == "simplexml") { $rezultatas = true; }

    Taip pat galite naudoti „extension_loaded“, kuris patikrina plėtinio pavadinimą (skiriamos didžiosios ir mažosios raidės).

    $loaded = plėtinys_įkeltas ("SimpleXML");

    Grąžina TRUE arba FALSE.

    PS Negerkite kavos, bet galiu uždėti mygtuką „pirk man dėžutę spurgų“ 🙂

    • 2

      Pakelk tą spurgos mygtuką, Nikai! Tu esi gyvybės gelbėtojas! Juokingiausia tai, kad (atėmus strtolower) aš iš tikrųjų paleidau pavyzdinį kodą ir naudojau tinkamą įvertinimą. Turbūt buvo vėlu, nes kai įdėjau, aš jį sujaučiau!

      Pakeičiau kodą ir tinklaraščio įrašą. Klausimas: Ar yra vienas pranašumas prieš kitą? Manau, kad plėtinys_loaded yra daug švaresnis ir greitesnis būdas tai išspręsti!

      Ačiū Nick!

  2. 4

    yum įdiegti php55-xml.x86_64, kad įdiegtumėte simpleXML, skirtą php 5.5.11

    Vykdoma operacija
    Diegimas: php55-xml-5.5.11-1.el6.x86_64 1/1
    Tikrinimas: php55-xml-5.5.11-1.el6.x86_64 1/1

    ir tada jis įdiegtas
    /usr/lib64/php/modules/simplexml.so

  3. 5

Ką manote?

Ši svetainė naudoja "Akismet", kad sumažintų šlamštą. Sužinokite, kaip apdorojamas jūsų komentaras.