जैसा कि यह पता चला है, लेखक ने एक बहुत ही सरल फिक्स और सामान्य अच्छी प्रैक्टिस को याद किया है कि आपको संपत्ति सेट करने का प्रयास करने से पहले हमेशा अपनी ऑब्जेक्ट को प्रारंभ करना चाहिए। इसके लिए बहुत आसान फिक्स बस new StdClass;
कॉल करने के लिए बस उस चर के साथ त्रुटि को जोड़ने के लिए है जो इसे एक्सेस करने का प्रयास कर रहा है।
$items[$i] = new StdClass;
$items[$i]->title = $crs_post_title;
वह पहली पंक्ति चेतावनी को दिखाने से ठीक करेगी।
यह निम्नलिखित सुधार के साथ /components/com_community/models/activities.php on line 387
में समस्या को भी ठीक करेगा।
$commentsResult[$comment->type . '-' . $comment->contentid] = new StdClass;
$commentsResult[$comment->type . '-' . $comment->contentid]->_comment_count = 0;
स्रोत
2013-02-11 06:25:48
यदि आप पूरे कोड को नहीं जानते हैं, तो सृजन रेखा में सशर्त जोड़ने के लिए बेहतर है, क्योंकि चेतावनी परिस्थिति हो सकती है। उदाहरण के लिए: यदि (! Is_object ($ आइटम [$ i])) {$ आइटम [$ i] = नया stdClass;} $ आइटम [$ i] -> शीर्षक = $ crs_post_title; –
आपका मतलब तत्काल है। प्रारंभ नहीं – Matth3w
@ मार्क टॉमलिन मेरे पास एक समान समस्या थी जिसे अब हल किया गया है –