त्यहाँ एक जोडी प्लगइनहरू छन् जुन मैले बनाएको छु जुन PHP5 + र आवश्यक छ सिम्पल एक्सएमएल। सिम्पल एक्सएमएल XML प्रतिक्रिया बाट पार्सि p को एक धेरै सजिलो र राम्रो प्रदर्शन विधि हो एपीआईs समस्या यद्यपि यो हो कि म एक दिन वा हप्ता केहि ईमेलमा मलाई सोध्ने गर्दछ कि किन प्रयोगकर्ताले प्रोग्राम लोड गर्न सकेन र यसले त्रुटिका परिणामहरू निम्त्यायो।
स्पष्ट रूपमा, प्लगइनहरूमा र परियोजना पृष्ठहरूमा मेरा सूचनाहरू पर्याप्त थिएनन्, त्यसैले मैले सही कार्य गरेँ र दुवै प्लगइनहरूमा कार्यक्षमता थपेँ कि सिम्पल XML विस्तार लोड भयो भन्ने प्रमाणित गर्न।
सिम्पल एक्सएमएल विस्तार जाँच गर्न PHP प्रकार्य लोड भयो:
प्रकार्य सिम्पलएक्सएमएललोडेड () {ray एर्रे = एर्रे (); ray एर्रे = get_loaded_exferences (); $ नतिजा = गलत; foreach ($ i => $ value को रूपमा एर्रे) {यदि (strtolower ($ value) == "साधारणxML") {$ परिणाम = सत्य; }} रिटर्न $ परिणाम; }
सिम्पलएक्सएमएल प्रयोग गर्ने कार्यहरूमा, अब म यो कुरा साँच्चिकै सिम्पल एक्सएमएल कल गर्नु भन्दा पहिले यो लोड भएको निश्चित गर्न सक्छु। यदि
यदि (! isSimpleXMLLoaded ()) {echo "तपाइँको साइट कतै होस्ट गर्नुहोस्!"; फर्किनु; }
मलाई थाहा छ मैले केहि PHP गुरुहरू पाएँ जो मेरो ब्लगमा नजर राख्छन्, मलाई थाहा दिनुहोस् मैले कसरी गरें! यो विधि प्रयोग गर्नको लागि मैले दुबै प्लगइनहरूमा साना अपडेटहरू जारी गरेको छु।
नमस्ते डग,
मैले एउटा बग याद गरें जुन सम्भवतः त्रुटि बढाउँदैन।
यदि ($value = "SimpleXML") { $result = true; }
हुनुपर्छ
यदि ($value == "SimpleXML") { $result = true; }
यद्यपि सुरक्षाको लागि। म रुचाउँछु।
यदि (strtolower($value) == "simplexml") { $result = true; }
तपाईंले 'extension_loaded' पनि प्रयोग गर्न सक्नुहुन्छ जसले एक्स्टेन्सन नाम जाँच गर्न लिन्छ (केस सेन्सेटिभ)।
$loaded = extension_loaded ("SimpleXML");
TRUE वा FALSE फर्काउँछ।
PS आफैं कफी पिउँदिन तर म 'मलाई डोनट्सको बक्स किन्नुहोस्' बटन लगाउन सक्छु 🙂
त्यो डोनट बटन माथि उठाउनुहोस्, निक! तपाईं एक जीवन बचाउने हुनुहुन्छ! के हास्यास्पद छ कि (माइनस द स्ट्रटोलोवर), मैले वास्तवमा मेरो नमूना कोड चलिरहेको थियो र सही मूल्याङ्कन प्रयोग गरेको थियो। यो ढिलो भएको हुनुपर्छ किनभने मैले यसलाई राख्दा, मैले यसलाई गडबड गरें!
मैले कोड र ब्लग पोस्ट परिमार्जन गरेको छु। प्रश्न: एक भन्दा अर्कोको कुनै फाइदा? मलाई लाग्छ extension_loaded यससँग व्यवहार गर्ने धेरै सफा र छिटो तरिका हो!
धन्यवाद निक!
एक्स्टेन्शन_लोड गरिएको मार्ग छ।
yum स्थापना गर्नुहोस् php55-xml.x86_64 php 5.5.11 को लागि simpleXML स्थापना गर्न
चलिरहेको लेनदेन
स्थापना गर्दै: 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
तपाईंले "extension_loaded ('SimpleXML')" किन गर्नुहुन्न? http://php.net/manual/en/function.extension-loaded.php
धन्यवाद जो! राम्रो सल्लाह।