2009-04-07 17 views
7

हमें डेटाबेस में संग्रहीत कुछ अंश जानकारी मिली है, उदा। ¾ ½एचटीएमएल इकाइयों में अंशों को परिवर्तित करना

कोई खोज करने और प्रतिस्थापित करने के लिए, क्या कोई अंतर्निहित PHP फ़ंक्शन हैं जो स्वचालित रूप से इन्हें उचित HTML इकाइयों में परिवर्तित कर देगा?

उत्तर

2

आप htmlentities() function का उपयोग कर सकते हैं। यह सभी विशेष पात्रों को उनके एचटीएमएल समकक्ष के साथ बदल देगा। यह आपकी आवश्यकता के लिए काम करना चाहिए।

अच्छा सवाल btw, +1।

2

htmlentities

लेकिन आपको शायद इसकी आवश्यकता नहीं है। अपने पृष्ठ को एक एन्कोडिंग में सेवा दें जिसमें उन्हें शामिल किया गया है (यूटीएफ -8, आईएसओ -885 9 -1) और आप उन्हें शाब्दिक, अनचाहे वर्णों के रूप में शामिल कर सकते हैं।

+0

वास्तव में? क्या यह सिर्फ भिन्नताओं पर लागू होता है? – Tom

+1

यूटीएफ -8 आपको रूपांतरण के बिना लगभग किसी भी चरित्र का उपयोग करने की अनुमति देगा। हालांकि, आपको अभी भी सुरक्षा के लिए एचटीएमएलटीटीएस कॉल करना चाहिए। http://akrabat.com/2009/03/18/utf8-php-and-mysql/ यूटीएफ -8 का उपयोग करने के लिए चरणों का विवरण - आपको php, mysql और html में परिवर्तन करने की आवश्यकता है। –

+0

यह आपके द्वारा उपयोग किए जा रहे एन्कोडिंग में फिट होने वाली किसी भी चीज़ पर लागू होता है। यदि आप आईएसओ -885 9 -1 (पश्चिमी यूरोपीय) में हैं तो आप यू +00 एफएफ तक पहुंचते हैं, जिसमें ¼½¾ (यू + 00 बीसी-यू +00 बीई) शामिल है। यदि आप यूटीएफ -8 का उपयोग कर रहे हैं, जिसमें पूरे यूनिकोड चरित्र गामट शामिल हैं। हालांकि आपको '<'/'&' से निपटने के लिए अभी भी htmlspecialchars की आवश्यकता होगी। – bobince

1

उत्तर पहले से ही दिया गया है: htmlentities() का उपयोग करें। इसके अलावा, यूटीएफ -8 के उपयोग का सुझाव दिया गया है, जो निश्चित रूप से वास्तव में एक अच्छा विचार है। हालांकि, अगर आप UTF-8 तार पर htmlentities() के प्रयोग पर योजना बना रहे हैं, तो निम्न कोड का उपयोग (या आप अजीब तरह से एन्कोड किए गए वर्ण प्राप्त करेंगे):

htmlentities($str, ENT_COMPAT, 'UTF-8') 

आप कल्पना कर सकते हैं, यह दूसरा जोड़ने के लिए होने बेकार और हर समय तीसरा तर्क। अधिकांश परियोजनाओं के लिए मुझे htmlentities() की आवश्यकता है, मैं एक शॉर्टकट फ़ंक्शन लिखना समाप्त करता हूं, i.e .:

function he($str) { // shortcut function for htmlentities() with UTF-8 settings 
return htmlentities($str, ENT_COMPAT, 'UTF-8'); 
} 
संबंधित मुद्दे