PHP के साथ Java के OO को भ्रमित न करें। जावा एक एकल प्रतिमान भाषा है जिसका अर्थ है कि यह केवल OO करता है। दूसरी ओर PHP एक बहु प्रतिमान भाषा है, आप या तो कार्यात्मक प्रोग्रामिंग या OO या दोनों कर सकते हैं।
अब ओओ के "खराब" कार्यान्वयन जैसी कोई चीज नहीं है। जावा का OO एक निश्चित कार्यान्वयन नहीं है जिसका हर दूसरी भाषा को पालन करना चाहिए। कुछ निश्चित अवधारणाएं हैं, और दोनों भाषाएं उन्हें अपने तरीके से पूरी तरह से लागू करती हैं (जावा शुरुआत से, पीएचपी 5 संस्करण के बाद से)।
तो, अपने प्रश्न का उत्तर देने के लिए: CI क्या करता है और आप इसके साथ क्या कर रहे हैं यह PHP दुनिया में सही है। PHP की सरणियाँ इसकी सबसे लचीली और उपयोगी संरचनाओं में से एक हैं और यह वास्तव में वस्तुओं पर सरणियों का उपयोग करने के लिए एक अच्छी बात है जब आपका डेटा सिर्फ जानकारी होती है (उनके साथ तर्क न करें)। पूरी तरह से ओओ कोड "केवल ओओ कोड" के समान नहीं है।
यदि आप PHP के साथ शुरू कर रहे हैं तो अच्छे OO प्रथाओं के लिए संदर्भ के रूप में जावा का उपयोग करें लेकिन "जावा इसे अलग तरह से करता है" चीज के कारण PHP की अपनी समझ को सीमित न करें। आप वास्तव में दोनों में पेंच कर सकते हैं, यदि आप अवधारणा नहीं प्राप्त करते हैं तो प्रतिमान आपको नहीं बचाएगा।
अगर किसी भी स्थिति में आप जावा को अपनी पसंद के अनुसार अधिक पसंद करते हैं (एक व्यक्तिगत प्राथमिकता के रूप में) वेब विकास के लिए रूबी की जांच करते हैं, तो वे थोड़ा अधिक निकट से संबंधित हैं।