ठीक है , मैं बस यहां सबसे अच्छा जवाब सुधारना चाहता हूं। क्रेडिट @Tekniskt पर जाता है, और यहां एकमात्र अंतर यह है कि आपके पास /application/config/email.php में मौजूद सेटिंग्स को अनदेखा किया जाता है, जो दर्द होता है, खासकर यदि आप कस्टम एसटीएमपी सेटिंग्स का उपयोग कर रहे हैं।
class MY_Email extends CI_Email {
public function __construct($config = array())
{
if (count($config) > 0)
{
$this->initialize($config);
}
else
{
$this->_smtp_auth = ($this->smtp_user == '' AND $this->smtp_pass == '') ? FALSE : TRUE;
$this->_safe_mode = ((boolean)@ini_get("safe_mode") === FALSE) ? FALSE : TRUE;
}
log_message('debug', "Email Class Initialized");
}
// this will allow us to add headers whenever we need them
public function set_header($header, $value){
$this->_headers[$header] = $value;
}
}
आशा है कि यह मदद करता है:
यहाँ वर्ग से भरा कोड MY_Email.php मैं ऊपर जवाब से सुधार किया है है! :)
मैंने अपना परीक्षण किया, और ऐसा लगता है कि अब /config/email.php शामिल है और सेटिंग्स ठीक से पारित की जाती हैं।
चीयर्स और उत्तर के लिए धन्यवाद! :)
स्रोत
2014-02-11 14:30:53
स्पष्टीकरण के लिए धन्यवाद ... –
मैं इस विधि का इस्तेमाल किया है सफलतापूर्वक बाहर जाने वाले मेल के लिए नए हेडर जोड़ने के लिए
सेट कस्टम हेडर दर्रा
$config
पैरामीटर। हालांकि जब मैं इसका उपयोग करता हूं, तो यह अब email.php कॉन्फ़िगरेशन फ़ाइल पर कोई ध्यान नहीं देता है जिसमें smtp सेटिंग्स होती है। क्या दोनों को करने का कोई तरीका है? – Gortronजब आप इस कक्षा का उपयोग करते हैं, तो आप सही @Gortron हैं, आप config/email.php से सेटिंग्स खो देते हैं; जिस तरह से मैंने इसे हल किया है, पूरे वर्ग से पूरे CONSTRUCT() फ़ंक्शन को प्रतिलिपि बनाना है, माता-पिता नहीं करें :: __ निर्माण(); यकीन नहीं है कि यह क्यों हो रहा है, लेकिन जब मैं पूर्ण कन्स्ट्रक्टर की प्रतिलिपि बनाता हूं, तो यह काम करता है। मैं नीचे एक और जवाब दूंगा, क्योंकि टिप्पणियां पूरे कोड के लिए बहुत कम हैं :) –