ऑटोलोडर श्रेणी सुविधा (जैसे Symfony 2.0) के लिए सिम्फनी 1.4 में नेमस्पेस (PHP 5.3 के साथ) को कैसे पंजीकृत करें?सिम्फनी 1.4 के ऑटोलोडर के साथ नामांकित कक्षाएं लोड हो रही हैं?
उत्तर
आप Symfony 1.4 ढांचे में Symfony2 से Autoloader उपयोग कर सकते हैं।
1. कॉपी Symfony2 अपने Symfony 1.4 सैंडबॉक्स परियोजना के विक्रेता निर्देशिका के लिए classloaders:
SF_ROOT_DIR/lib/विक्रेता/Symfony2/src/Symfony/घटक/classloader/UniversalClassLoader.php
SF_ROOT_DIR/lib/विक्रेता/Symfony2/src/Symfony/घटक/classloader/ApcUniversalClassLoader.php
2. अपने एस संशोधित F_ROOT_DIR/config/ProjectConfiguration.class.php फ़ाइल इस प्रकार है:
require_once dirname(__FILE__) . '/../lib/vendor/symfony/lib/autoload/sfCoreAutoload.class.php';
require_once dirname(__FILE__) . '/../lib/autoload/sfClassLoader.class.php';
sfCoreAutoload::register();
class ProjectConfiguration extends sfProjectConfiguration {
public function setup() {
$this->namespacesClassLoader();
$this->enablePlugins('sfDoctrinePlugin');
}
public function namespacesClassLoader() {
if (extension_loaded('apc')) {
$loader = new ApcUniversalClassLoader('S2A');
} else {
$loader = new UniversalClassLoader();
}
$loader->registerNamespaces(array(
'Pohon' => __DIR__ . '/../lib/vendor/Pohon/src'));
$loader->register();
}
}
3. रजिस्टर वांछित नामस्थान:
जैसे। मैं कक्षा लोड करना चाहता हूं:
पोहोन \ उपकरण \ स्ट्रिंग \ Utils \ Slugify।
फ़ाइल का नाम होना चाहिए:
SF_ROOT_DIR/lib/विक्रेता/Pohon/src/Pohon/उपकरण/स्ट्रिंग/Utils/Slugify.php
और पंजीकृत नाम स्थान इस प्रकार है:
Pohon => SF_ROOT_DIR/lib/विक्रेता/Pohon/src
ऑटोलोडर प्रोजेक्ट यहां पाया जा सकता है: https://github.com/Symfony-Plugins/sfClassLoaderPlugin। –
Breautiful, धन्यवाद! मुझे 'सिम्फनी \ घटक \ क्लासलोडर \ UniversalClassLoader का उपयोग करना पड़ा; सिम्फनी \ घटक \ क्लासलोडर \ ApcUniversalClassLoader का उपयोग करें; 'ProjectConfiguraration.class.php फ़ाइल में आयात के बाद। साथ ही, क्लासलोडर बंडल का लिंक यहां दिया गया है (इन वर्गों को बहिष्कृत करने से पहले): https://github.com/symfony/ClassLoader/tree/2.6 – GermanK
सिम्फनी spl_autoload_register()
फ़ंक्शन का उपयोग अपने स्वयं के ऑटोलोडर (sfAutoload
) को पंजीकृत करने के लिए करता है।
आप अपने परियोजना/आवेदन/प्लगइन का initialize()
समारोह में अपने स्वयं के हैंडलर रजिस्टर कर सकते हैं। (जो भी लागू होता है)।
यह, उदाहरण के लिए, यह भी क्या Swift_Mailer
प्लगइन करता है: यह अपने आप ही autoloader जब जरूरत पंजीकृत करता है।
आप Composer का उपयोग कर सकते हैं और यह बहुत आसान है। बस आपकी मशीन पर इसे स्थापित (आप शायद पहले से ही के बाद से यह 2015 है है) और अपने प्रोजेक्ट फ़ोल्डर में चलाएँ:
composer init
फिर आप सभी संकुल आप संगीतकार के साथ करना चाहते हैं और अपने ProjectConfiguration.class.php
में सिर्फ इस लाइन में शामिल हैं स्थापित कर सकते हैं:
require_once __DIR__.'/../vendor/autoload.php';
ध्यान दें कि रास्तों यदि आप डिफ़ॉल्ट Symfony1.4 निर्देशिका संरचना बदल भिन्न हो सकती है।
सिम्फनी 1.4 पता नहीं है कि नामस्थान के भीतर कक्षाएं कैसे लोड करें, आपको लागू करना होगा यह सुविधा। संगीतकार सिर्फ एक पैकेज/lib प्रबंधक है। –
संगीतकार एक क्लासलोडर भी प्रदान करता है और जब आप इंस्टॉल करते हैं (संगीतकार स्लैंग "आवश्यकताएँ" का उपयोग करने के लिए) पैकेज के साथ आपको बस इतना करना है कि उपरोक्त 'विक्रेता/autoload.php' स्क्रिप्ट शामिल है। संगीतकार स्थापित पैकेजों में नामस्थानों को मैप करने का ख्याल रखता है, उनमें से सभी। या तुमने कोशिश की? मैं ऐसा करता हूं और यह काफी अच्छी तरह से काम करता है। – ggioffreda
इस समाधान के लिए धन्यवाद, यह मेरे लिए काम करता है। आपको विक्रेता-डीआईआर निर्दिष्ट करने की आवश्यकता है: एसएफ 1.4 के मूल विक्रेता डीआईआर में पुस्तकालयों के लिए "lib/विक्रेता"; एएम पुस्तकालय के लिए इस्तेमाल किया और यह ठीक काम करता है। – Naeh
- 1. कोडइग्निटर में कस्टम कक्षाएं लोड हो रही हैं?
- 2. सिम्फनी 2 या सिम्फनी 1.4?
- 3. संगीतकार बनाम सिम्फनी 2 ऑटोलोडर
- 4. सिम्फनी 2 सुरक्षा बंडल के साथ सिम्फनी 1.4 sfGuardUser टेबल का उपयोग करना?
- 5. सिम्फनी 1.4: सीएसआरएफ के लिए कस्टम त्रुटि संदेश
- 6. सिम्फनी 2 प्रॉक्सी को सैमफोनी 1.4 प्रोजेक्ट
- 7. OutofMemoryException - बेहद बड़ी छवियां लोड हो रही हैं
- 8. हैएस्टैक Django 1.4 के साथ असंगत है?
- 9. सिद्धांत से सिम्फनी 1.4 स्विच करने के लिए
- 10. सी # में देरी लोड हो रही है?
- 11. दो कक्षाएं, हो रही "प्रकार से परिभाषित नहीं है" त्रुटि
- 12. हो रही Intellij
- 13. हो रही कुल रिकॉर्ड के साथ रिकॉर्ड के सबसेट गणना
- 14. हो रही
- 15. Django 1.4 - एक सूची के साथ bulk_create
- 16. मैं संगीतकार का उपयोग कर सिम्फनी 1.4 कैसे स्थापित करूं?
- 17. जेडेंड ऑटोलोडर
- 18. सिम्फनी 2 के साथ वर्कफ़्लो?
- 19. शैली यूआरएल में हैश के साथ खराब हो रही है
- 20. सिम्फनी 2 कस्टम हेल्पर कक्षाएं कहां रखें
- 21. Mockito - देशी तरीकों के साथ मजाक कक्षाएं
- 22. PHP ऑटोलोडर वर्ग बनाम प्रक्रियात्मक autoloader समारोह?
- 23. हो रही
- 24. जावा के साथ हो रही होस्टनाम नवीनतम jdk7
- 25. अपरिभाषित के साथ परेशानी हो रही है! == अपरिभाषित
- 26. mod_passenger.so के साथ यह अनुमति त्रुटि क्यों हो रही है?
- 27. अपलोड हो रही फ़ाइल अंगूर के साथ और paperclip
- 28. रुबी में विधियों के अंदर कक्षाएं क्यों नहीं हो सकतीं?
- 29. जेनकींस नौकरियां गायब हो रही हैं
- 30. सिम्फनी 1.4 में एक सहायक को कैसे कार्यान्वित करें?
क्या आप अंततः नेमस्पेस के साथ काम कर रहे सिम्फनी 1.4 ऑटोलोडिंग प्राप्त करने में सक्षम थे?यदि हां, तो क्या आप मुझे बता सकते हैं कि कैसे? –