मैं सिर्फ एक microtime बेंचमार्क पक्ष की ओर से preg_match
के खिलाफ 50 बार एक if
बयान में चलाने के लिए और filter_var_array
ठीक उसी रीसेट डेटा मान्य है, यहाँ microtime परिणाम हैं:
filter_var_array
microtime: 0.000834226608276
preg_match
microtime: 0.000180006027222
filter_var_array
को सुंदर दिखता है, लेकिन 4 preg_match
से 8 गुना धीमी है, इसलिए यदि आपके पास उच्च ट्रैफ़िक वेबसाइट है और तेज़ कोड पसंद करते हैं तो मैं preg_match
की अनुशंसा करता हूं।
हालांकि यदि आपको अच्छा साफ कोड पसंद है और वास्तव में यह परवाह नहीं है कि यह कैसे चलता है तो filter_var_array
का उपयोग करें जो कई रूपों के अनुरोधों और इनपुट पर आसान फ़िल्टर लागू करने के लिए अधिक प्रबंधनीय हो सकता है।
लेकिन आसानी के इस तरह का भी इस तरह के ईमेल या अक्षरांकीय के रूप में विभिन्न परिदृश्यों के लिए एक preg_match
समारोह लेखन, लेकिन जब उदाहरण के लिए regex लेखन मन preg_match
सुरक्षा में रखने के द्वारा प्राप्त किया जा सकता है:
http://blog.php-security.org/archives/76-Holes-in-most-preg_match-filters.html
मैं करूंगा दोनों पर स्मृति उपयोग करुणा भी देखना पसंद है।
आशा इस मदद करता है
स्रोत
2013-11-12 23:38:37
उपयोग php_filter कभी भी आप कर सकते हैं, इसे बनाने में है (थोड़ा तेजी से और आप आप सही सत्यापन का उपयोग यकीन है), तो आप आप क्या जरूरत नहीं मिल रहा है, तो एक कस्टम एक का उपयोग करें। –
मैं कस्टम फ़ंक्शंस के बारे में बात नहीं कर रहा था, क्योंकि फ़ंक्शन में बनाया गया हमेशा तेज़ होगा। मैं फ़िल्टर के बारे में बात कर रहा था जिसमें पहले से ही मूल php फ़ंक्शन विकल्प है। – Tiddo
मैं समझता हूं, लेकिन यदि आप preg_match का उपयोग करते हैं तो आपको regexp को कस्टमाइज़ करना होगा - मुझे कहना चाहिए था कि preg_match के साथ regexp को कस्टमाइज़ किया गया है –