विस्तारित यह वास्तव में अजीब है। मेरे पास कुछ कोड है जो php5-imagick मॉड्यूल के संस्करण 2.1.1RC1 पर खुशी से काम कर रहा है। यह मूल रूप से सिर्फ एक वर्ग है जिसे मैंने लिखा है इमेजिक कक्षा को विस्तारित करता है और डेटाबेस में संग्रहीत छवियों का प्रबंधन करता है।PHP अजीबता इमेजिक वर्ग
संस्करण 3.0.0 आरसी 1 (केवल मेरे देव बॉक्स पर धन्यवाद) के बाद से चीजें नरक में चली गई हैं। ऐसा लगता है कि ऑब्जेक्ट सदस्य लिखने योग्य हैं लेकिन पठनीय नहीं हैं। निम्नलिखित नमूना कोड लें:
class db_image extends IMagick {
private $data;
function __construct($id = null){
parent::__construct();
$this->data = 'some plain text';
echo $this->data;
}
यह बिल्कुल कुछ भी आउटपुट नहीं करेगा। मेरा डीबगर इंगित करता है कि $ की सामग्री-> डेटा सही स्ट्रिंग मान हैं, लेकिन मैं सदस्य चर के मूल्य को वापस पढ़ने में असमर्थ हूं।
गंभीरता से। WTF? क्या किसी को पता है कि इसका क्या कारण है या इसे पहले देखा है? मैं यह भी नहीं जानता कि इस व्यवहार को अपने वर्गों में कैसे दोहराना है।
शुद्ध अटकलें, लेकिन शायद नई 'Imagick 'वर्ग का अपना' निजी $ डेटा 'सदस्य है, जो आपको इसे ओवरराइड करने से रोकता है। अन्य वैरिएबल नाम अपेक्षित काम करते हैं? – deceze
क्या आप पूरा कोड दिखा सकते हैं? –
दुर्भाग्यवश इससे कोई फर्क नहीं पड़ता कि सदस्य परिवर्तनीय नाम क्या है। इसे $ sdfhjsdfhlsdf पर कॉल करें और इसका एक ही परिणाम होगा। हालांकि धन्यवाद। –