यह कहां उत्पन्न होता है?
अगर आप app/code/core/Mage/Sales/Model/Order.php में देखते हैं लगभग लाइन पर 2052 , आप निम्नलिखित पाएंगे:
$this->setData('protect_code', substr(md5(uniqid(mt_rand(), true) . ':' . microtime(true)), 5, 6));
यह वह जगह है जहां protect_code आदेश के लिए उत्पन्न होता है (md5, uniqid, और यादृच्छिक पूर्णांक के संयोजन का उपयोग करके।
इसका उपयोग किस लिए किया जाता है?
अगर आप app/code/core/Mage/Sales/Helper/Guest.php में देखते हैं और loadValidOrder . ढूंढें समारोह। आप देखेंगे protect_code कुछ क्षेत्रों में यह सुनिश्चित करने के लिए उपयोग किया जाता है कि लोड किया जा रहा ऑर्डर अतिथि के कुकी मूल्य के लिए सही है।
इसका उपयोग अन्य क्षेत्रों में भी किया जाता है, जैसे ट्रैकिंग जानकारी तुलना। आप getProtectCode() . के कई उदाहरण देख सकते हैं ट्रैकिंग जानकारी के ऑर्डर की तुलना करने के लिए शिपमेंट मॉडल में विधि को कॉल किया जा रहा है। इसका उपयोग करने वाले फ़ंक्शन का एक उदाहरण है:
public function getTrackingInfoByTrackId()
{
$track = Mage::getModel('sales/order_shipment_track')->load($this->getTrackId());
if ($track->getId() && $this->getProtectCode() == $track->getProtectCode()) {
$this->_trackingInfo = array(array($track->getNumberDetail()));
}
return $this->_trackingInfo;
}
जैसा कि आप $this->getProtectCode() == $track->getProtectCode() के साथ देख सकते हैं , ट्रैकिंग protect_code शिपमेंट से मेल खाना चाहिए protect_code ।