मुझे लगता है कि इनपुट से किसी भी HTML टैग को अलग करने से आपको कुछ बहुत सुरक्षित मिलेगा - सिवाय इसके कि अगर किसी को मार्कडाउन में कुछ गड़बड़ डेटा को इंजेक्ट करने का कोई तरीका मिल जाए, तो इससे कुछ और गड़बड़ आउटपुट उत्पन्न होता है ^^
फिर भी, मेरे दिमाग में दो बातें आती हैं:
पहला वाला: strip_tags
चमत्कारी कार्य नहीं है :इसमें कुछ खामियां हैं...
उदाहरण के लिए, यह इस तरह की स्थिति में '<' के बाद सब कुछ छीन लेगा:
$str = "10 appels is <than 12 apples";
var_dump(strip_tags($str));
मुझे जो आउटपुट मिलता है वह है:
string '10 appels is ' (length=13)
जो आपके उपयोगकर्ताओं के लिए उतना अच्छा नहीं है :-(
दूसरा : किसी न किसी दिन, आप कुछ HTML टैग्स/विशेषताओं को अनुमति देना चाहेंगे; या, आज भी, आप यह सुनिश्चित करना चाहेंगे कि मार्कडाउन कुछ HTML टैग/विशेषताएँ उत्पन्न नहीं करता है।
HTMLPurifier जैसी किसी चीज़ में आपकी रुचि हो सकती है :यह आपको निर्दिष्ट करने की अनुमति देता है कि कौन से टैग और विशेषताओं को रखा जाना चाहिए, और एक स्ट्रिंग को फ़िल्टर करता है, ताकि केवल वे ही रहें।
यह मान्य HTML कोड भी उत्पन्न करता है -- जो हमेशा अच्छा होता है ;-)