में PHP फ़ाइल समेत मेरे पास एक लॉगर क्लास है जिसे मुझे अपने एप्लिकेशन प्रोसेसिंग को लॉग करने की आवश्यकता है। मैं फ़ाइल को जूमला में कैसे शामिल कर सकता हूं, जब मेरी फ़ाइल फ़ोल्डर में स्थित है। मैं हमेशा ../../../ का उपयोग करके फ़ाइल को शामिल नहीं करना चाहता हूं, क्योंकि तब भी जब भी मैं अपनी कक्षा शामिल करता हूं तो मुझे पथों को मैन्युअल रूप से गिनना होगा। क्या उस लाइन को उत्पन्न करने का कोई तरीका है जिसमें उस फ़ाइल को अपेक्षाकृत शामिल किया जाएगा?जूमला
जूमला
उत्तर
आप यहाँ से JPath के लिए जूमला स्थिरांक इस्तेमाल कर सकते हैं: तो जैसे http://docs.joomla.org/JPath:
:include_once (JPATH_ROOT.DS.'includes'.DS.'some.class.php');
आप निम्न में से किसी के साथ JPATH_ROOT जगह ले सकता है
JPATH_SITE
JPATH_BASE
कृपया ध्यान दें कि डीएस 2.5 में बहिष्कृत है और 3.0 में हटा दिया गया है। –
आप जूमला 3 में सही @ वेलेंटीन देस्पा हैं, यह 'DIRECTORY_SEPARATOR' – bumerang
है, आपको इसकी आवश्यकता भी नहीं है। बस '/' का प्रयोग करें –
उपयोग इस हर जगह
<?php
include $_SERVER['DOCUMENT_ROOT']."/lib/sample.lib.php";
?>
जूमला 2.5 + में कभी भी कक्षा शामिल करने के लिए include_once या requ_once का उपयोग न करें फ़ाइल। PHP को यह जांचना है कि फ़ाइल लोड करने से पहले फ़ाइल पहले ही लोड हो चुकी है या नहीं।
चूंकि जूमला 2.5 के बाद जेएलओडर :: रजिस्टर() विधि है जो किसी भी स्मृति का उपयोग नहीं करती है जब तक कि आपको कक्षा के भीतर कोई विधि निष्पादित करने की आवश्यकता न हो।
मुझे लगता है यह "बंद" बहुत unconstructive के रूप में। हालांकि नीचे रचनात्मक प्रतिक्रियाएं हैं। ऐसा लगता है कि कुछ लोग अपने कर्म बिंदु विशेषाधिकारों का दुरुपयोग करने पर उच्च हो जाते हैं। –