2009-08-01 12 views
23

मैं एक CentOS 5.3 VMware 'बॉक्स' पर indefero स्थापित करने की कोशिश कर रहा हूं और मैं एक समस्या में भाग गया।अंतर्निहित mb_internal_encoding विधि को कॉल करने में असमर्थ?

[[email protected] /var/www/html]# cat x.php 
<?php 
    mb_internal_encoding("UTF-8"); 
?> 
[[email protected] /var/www/html]# php x.php 
PHP Fatal error: Call to undefined function mb_internal_encoding() in 
/var/www/html/x.php on line 2 

मैं जब अपाचे के माध्यम से http के माध्यम से इस स्क्रिप्ट बुला ही त्रुटि मिलती है: काफी स्थापना के शुरू में मैं एक त्रुटि है कि मैं इस के लिए नीचे संकीर्ण करने के लिए कर लिया है मिलता है। अब PHP manual the mb_internal_encoding function के अनुसार एक PHP 5.

में builtin किया जाना चाहिए मैं 5.3 CentOS i386 (लिनक्स कोड 2.6.18-53.1.21.el5 # 1 SMP मंगल मई 20 09:34:18 EDT 2008 i686 i686 है i386 जीएनयू/लिनक्स) और मैंने PHP 5.2.9 स्थापित किया है।

[[email protected] /var/www/html]# php -v 
PHP 5.2.9 (cli) (built: Jul 8 2009 06:03:36) 
Copyright (c) 1997-2009 The PHP Group 
Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies 

मैंने दो बार चेक किया है: सेलिनक्स अक्षम कर दिया गया है (अभी के लिए)।

मैं इसे कैसे ठीक करूं?

+2

यह वास्तव में है निर्मित? अंतर्निहित मॉड्यूल की सूची प्राप्त करने के लिए _php-m_ पर कॉल करें। – VolkerK

उत्तर

49

mbstring एक "गैर-डिफ़ॉल्ट" एक्सटेंशन है, जो डिफ़ॉल्ट रूप से सक्षम नहीं है; देख मैनुअल की this page:

स्थापना

mbstring एक गैर-डिफ़ॉल्ट विस्तार है। इसका मतलब है कि यह डिफ़ॉल्ट द्वारा सक्षम नहीं है। कॉन्फ़िगरेशन विकल्प के साथ आपको मॉड्यूल को मॉड्यूल को स्पष्ट रूप से सक्षम करना होगा। जानकारी के लिए स्थापित करें अनुभाग देखें

तो, आपको लगता है कि एक्सटेंशन सक्षम हो सकता है, php.ini फ़ाइल को संशोधित करने (और अपाचे को पुन: प्रारंभ, तो आपके संशोधन को ध्यान में रखा जाता है)


मैं डॉन 'टी CentOS उपयोग करें, लेकिन आप पहली बार विस्तार स्थापित करना पड़ सकता है, इस की तरह कुछ का उपयोग कर (this page देखते हैं, उदाहरण के लिए, जो एक समाधान देने के लिए लगता है):

yum install php-mbstring 

(पैकेज का नाम थोड़ा अलग हो सकता है; हां, तो इसे पाने के लिए :-))

+1

धन्यवाद, आप पूरी तरह से सही थे। मुझे php-mbstring नामक एक अतिरिक्त आरपीएम स्थापित करने की आवश्यकता थी। –

+0

आपका स्वागत है :-) मज़े करो! –

+0

yum इंस्टॉल करने के बाद php-mbstring स्थापित करने के बाद आपको कुछ करने की ज़रूरत है? मैंने apachectl पुनरारंभ करने की कोशिश की लेकिन कोई पासा – relipse

3

कोई परेशानी हो रही है, तो ubuntu में php-mbstring पैकेज को स्थापित करने के साथ यम खोज का उपयोग निम्न उपाय अपनाते हैं sudo apt-get install libapache2-mod-php5

+3

यह भी ध्यान देने योग्य है कि अगर ondrej/php भंडार से php7.0 का उपयोग कर सही पैकेज php7.0-mbstring है। –

13

Debian/Ubuntu के लिए:

sudo apt-get install php7.0-mbstring

0

ओपनएसयूएसई (ज़िप्पर पैकेज मैनेजर) के लिए:

zypper install php5-mbstring 

और:

zyper install php7-mbstring 

दूसरी तरफ, आप उन्हें YaST सॉफ़्टवेयर प्रबंधक के माध्यम से खोज सकते हैं।

ध्यान दें कि, आप अपाचे HTTP सर्वर को पुनरारंभ करना होगा:

systemctl restart apache2.service 
संबंधित मुद्दे