htmlentities
और htmlspecialchars
HTML आउटपुट . उत्पन्न करने के लिए उपयोग किया जाता है जो ब्राउज़र को भेजा जाता है।
डेटाबेस इंजन . को क्वेरी जेनरेट करने/भेजने के लिए तैयार स्टेटमेंट का उपयोग किया जाता है ।
दोनों डेटा से बचने की अनुमति देते हैं; लेकिन वे एक ही उपयोग के लिए नहीं बचते हैं।
तो, नहीं, तैयार कथन (एसक्यूएल प्रश्नों के लिए) आपको htmlspecialchars
. का ठीक से उपयोग करने से न रोकें /htmlentities
(एचटीएमएल पीढ़ी के लिए)
strip_tags
About के बारे में :यह एक स्ट्रिंग से टैग हटा देगा, जहां htmlspecialchars
उन्हें HTML निकायों में बदल देगा।
वे दो कार्य समान कार्य नहीं करते हैं; आपको यह चुनना चाहिए कि आपकी आवश्यकताओं के आधार पर किसका उपयोग करना है / आप क्या प्राप्त करना चाहते हैं।
उदाहरण के लिए, इस कोड के साथ:
$str = 'this is a <strong>test</strong>';
var_dump(strip_tags($str));
var_dump(htmlspecialchars($str));
आपको इस तरह का आउटपुट मिलेगा:
string 'this is a test' (length=14)
string 'this is a <strong>test</strong>' (length=43)
पहले मामले में, कोई टैग नहीं; दूसरे में, ठीक से बच गए।
और, एक HTML आउटपुट के साथ:
$str = 'this is a <strong>test</strong>';
echo strip_tags($str);
echo '<br />';
echo htmlspecialchars($str);
आपको मिलेगा:
this is a test
this is a <strong>test</strong>
आप इनमें से कौन सा चाहते हैं? वह महत्वपूर्ण प्रश्न है ;-)