घातक त्रुटि: क्लास 'सोपक्लींट' नहीं मिला


202

मैं एक साधारण वेब सेवा उदाहरण की कोशिश कर रहा हूं और मुझे यह त्रुटि तब भी मिली है जब मैंने फाइल extension=php_soap.dllमें असंगतता की php.iniहै:

घातक त्रुटि: क्लास 'SoapClient' C: \ Program Files (x86) \ EasyPHP-5.3.9 \ www \ server.php पर पंक्ति 2 में नहीं मिली


3
क्या आप सुनिश्चित हैं कि आपने Apache / bin / php.ini को एडिट किया है और उसके बाद अपाचे को पुनः आरंभ किया है ??
शुभम

धन्यवाद। जाहिर है, मैंने एक और php.ini फ़ाइल बदल दी है। मुझे अपाचे फ़ाइल में एक मिला।
फिजेन गुंगोले

sudo apt-get install php7.0 आप में से उन लोगों के लिए जिन्होंने इसे अभी तक इंस्टॉल नहीं किया है
FoxMcCloud

जवाबों:


353

निदान

अपनी स्क्रिप्ट फ़ाइल के अंदर निम्नलिखित देखें

phpinfo();

यदि आपको ऐसा Soap Clientकरने के लिए सेट नहीं मिल रहा enabledहै: जिस तरह से साबुन phpinfo में दिखाई देना चाहिए ()

ठीक कर

निम्न कार्य करें:

  1. जानें php.iniअपने में अपाचे बिन फ़ोल्डर, IeApache/bin/php.ini
  2. ;की शुरुआत से हटा देंextension=php_soap.dll
  3. अपने Apache सर्वर को पुनरारंभ करें
  4. अपने phpinfo();फिर से देखें और जांचें कि क्या आप ऊपर के व्यक्ति के समान चित्र देखते हैं
  5. यदि आप करते हैं, समस्या हल हो गई!

दूसरी ओर यदि यह आपके मुद्दे को हल नहीं करता है, तो आप यहां SOAP की आवश्यकताओं की जांच करना चाहते हैं । साथ ही कमेंट सेक्शन में आप https से जुड़ने की अच्छी सलाह पा सकते हैं।


12
इस लाइन को भी अनफॉलो करने की भूल न करें: ;extension=php_openssl.dll अगर आप जिस WSDL तक पहुँचने की कोशिश कर रहे हैं, वह https प्रोटोकॉल के तहत है
juliangonzalez

मेरे मामले में यह स्थापित नहीं किया गया था और php.in um में php5.6 centos6.9 का उपयोग करके कोई एक्सटेंशन = php_soap.dll नहीं है
शून्य 8

7
मैं xamp का उपयोग कर रहा हूं और सिर्फ अनकम्फर्टिंग extension=soapट्रिक करता हूं।
SAMPro

3
sudo apt-get install php7.0- साबुन आप में से उन लोगों के लिए जिन्होंने इसे अभी तक स्थापित नहीं किया है
FoxMcCloud

1
मेरे लिए, SoapClientवर्ग अभी भी नहीं मिला है। मुझे लगता है कि यह phpinfo () में सक्षम है, विस्तार सक्षम है, खुलता है भी सक्षम है, सब कुछ ठीक है, लेकिन वर्ग नहीं मिला है। मैं Wampserver 3.0 और PHP 5.6 का उपयोग करता हूं और मैंने Apache को फिर से शुरू किया है लेकिन समस्या का समाधान नहीं करता है। कृपया मदद कीजिए।
ईव

149

अपने Ubuntu टर्मिनल में PHP-7 रन में SOAP स्थापित करने के लिए:

sudo apt-get install php7.0-soap

अपने Ubuntu टर्मिनल में PHP-7.1 रन में SOAP स्थापित करने के लिए:

sudo apt-get install php7.1-soap

अपने Ubuntu टर्मिनल में PHP-7.2 चलाने में SOAP स्थापित करने के लिए:

sudo apt-get install php7.2-soap

अपने Ubuntu टर्मिनल में PHP-7.3 रन में SOAP स्थापित करने के लिए:

sudo apt-get install php7.3-soap


9
मेरे मामले में यह थाsudo apt-get install php-soap
dhcgn

मैंने php7 में अपग्रेड किया था और php70w- साबुन को पुनः इंस्टॉल करना भूल गया था (मैं हमेशा PHP के पुराने संस्करण को पूरी तरह से हटा देता
हूं

1
अगर मुझे php7.3- साबुन :-) स्थापित करना है तो क्या करना है? मै खो गया हूँ।
क्रिस

@chris ने आप कोशिश की:sudo apt-get install php7.2-soap
नाहिद

21

AWS (RHEL) के लिए:

sudo yum install php56-soap

(56 यहाँ 5.6 PHP संस्करण है - यहाँ अपना संस्करण डालें)।


3
यह हो सकता है sudo yum install php56w-soap! मैं w भूल गया, और यह स्थापित करता है, और अभी भी यह काम नहीं किया। यह पता लगाने में थोड़ा समय लगा लेकिन अब यह काम करता है।
SPRBRN

1
मेरे लिए यह sudo apt-get install php5.6- साबुन था
सुकेशिनी

1
संस्करण की कोई ज़रूरत नहीं है, बस php- साबुन
ampachts

15

अपने Ubuntu 14.04 टर्मिनल में निम्नलिखित PHP5.6 चलाने में SOAP स्थापित करने के लिए:

sudo apt-get install php5.6-soap
service php5.6-fpm restart
service apache2 restart

देखें कि क्या SOAP सक्षम था:

php -m

(आपको लौट आए पाठ के बीच SOAP देखना चाहिए।)


11

मुझे दौड़ना पड़ा

php-config --configure-options --enable-soap 

रूट के रूप में और अपाचे को पुनरारंभ करें।

वह काम किया! अब मेरा phpinfo () कॉल SOAP सेक्शन को दिखाता है।


1
rebootउल्लेख किया जाना चाहिए कि इसके अपाचे रिबूट, सर्वर रिबूट नहीं।
मशीनीडिट

8

मैं खोजने के couln'tSOAP में अनुभागphpinfo() तो मैं इसे स्थापित करने के लिए किया था।

जानकारी के लिए SOAPविस्तार के लिए libxmlPHP एक्सटेंशन की आवश्यकता होती है । इसका मतलब है कि http://php.net/manual/en/soap.requirements.php के--enable-libxml अनुसार इसमें पास होना भी आवश्यक है

WHM पैनल से

  1. सॉफ्टवेयर »मॉड्यूल इंस्टॉलर» PHP एक्सटेंशन और एप्लीकेशन पैकेज
  2. SOAP 0.13.0 स्थापित करें

    चेतावनी: "नाशपाती / HTTP_Request" "नाशपाती / HTTP_Request2" के पक्ष में चित्रित किया गया है

    ठीक स्थापित करें: चैनल: //pear.php.net/SOAP-0.13.0

  3. HTTP_Request2 (वैकल्पिक) स्थापित करें

    ठीक स्थापित करें: चैनल: //pear.php.net/HTTP_Request2

  4. सेवाएं पुनरारंभ करें »HTTP सर्वर (Apache)

शेल कमांड से

1. नाशपाती SOAP स्थापित करें

2.reboot


WHM के EasyApache इंटरफ़ेस में भी Soap को एक्सेप्टिव विकल्प सूची में सक्षम करने का विकल्प है।
एंड्रयू

8

मैंने PHP 7.0.22-0ubuntu0.16.04.1 नगनेक्स पर इस मुद्दे को हल किया

sudo apt-get install php7.0-soap

sudo systemctl restart php7.0-fpm
sudo systemctl restart nginx

3

डॉकर के लिए * यह पंक्ति जोड़ें:

RUN apt-get update && \
    apt-get install -y libxml2-dev && \
    docker-php-ext-install soap

*: डेबियन आधारित छवियों के लिए, यानी। अल्पाइन वेरिएंट के लिए काम नहीं करेगा।


1

के लिए XAMPP उपयोगकर्ताओं , खुले php.iniफ़ाइल में स्थित C:/xampp/phpऔर हटाने ;की शुरुआत से extension=soap। फिर अपाचे को पुनरारंभ करें और यह बात है!


0

आपको nusoap.phpक्लास इनहेरिट करना होगा और इसे अपने प्रोजेक्ट डायरेक्टरी में डालना होगा, आप इसे इंटरनेट से डाउनलोड कर सकते हैं ।

इस कोड का उपयोग करें:

require_once('nusoap.php');

2
NuSoap एक वेब सेवा (सर्वर) बनाते हैं। प्रारंभिक प्रश्न एक WebService (ग्राहक) का उपभोग करने के लिए है, इसलिए NuSoap और उल्लेखित समस्या के बीच कोई संबंध नहीं हैं
कार्लोस बी। फ़ितोज़ा फ़िल्हो

शायद तुम कहाँ nusoap के साथ काम करने के क्षण में कुछ सोच रहा है यही कारण है कि आप इस cemanted है।
शून्य 8

"इंटरनेट।"
अत्तिला फुलोप

0

सेंटोस 7.8 और पीएचपी 7.3 पर

yum install php-soap
service httpd restart
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.