2009-12-18 9 views
13

मुझे ज़ेंड फ्रेमवर्क में एक सहायक फ़ंक्शन के वास्तविक कार्यों को समझने में सहायता चाहिए।

मुझे किसी को यह बताने की ज़रूरत है कि $this->escape($string) वास्तव में टेम्पलेट में स्ट्रिंग को मुद्रित करने से पहले इसे पारित स्ट्रिंग पर करता है।

उत्तर

18

$this->escape() पाइक परियोजना पर अधिक सेटिंग्स आप $this->setEscape('functionname') साथ प्रदान कर सकते हैं के अनुसार एक स्ट्रिंग निकल जाता है यह PHP के htmlspecialchars समारोह है डिफ़ॉल्ट रूप से,।

http://framework.zend.com/manual/en/zend.view.scripts.html

7

यह htmlspecialchars PHP function पर कॉल करता है।

प्रदर्शन किया अनुवाद कर रहे हैं:

  • '&' (एम्परसेंड) हो जाता है '& amp;'
  • '' '(डबल कोट)' & quot; 'बन जाता है;
  • '<' (उससे कम) '& लेफ्टिनेंट बन जाता है;'
  • '>' (से अधिक) '& gt;
1

हम एक कस्टम धारा आवरण का निर्माण है कि XSS के विरुद्ध डिफ़ॉल्ट रूप से सुरक्षित होने के लिए स्वचालित रूप से सभी दृश्य चर से बच निकलता है, न्यूनतम प्रदर्शन हिट के साथ! आप अभी भी रॉ मूल्य प्राप्त कर सकते हैं:

<?=~ $variable ?>

"~" चरित्र पर ध्यान दें। चेकआउट http://code.google.com/p/php-pike/wiki/Pike_View_Stream