चूंकि मैंने पीईसीएल के साथ PHP के लिए एपीसी स्थापित किया है, मुझे कभी-कभी ये त्रुटियां मिलती हैं: समय-समय पर Cannot redeclare class xxx
एपीसी के साथ PHP: घातक त्रुटियां: वर्ग को पुन: वर्गीकृत नहीं कर सकते हैं
xxx परिवर्तन। मैं एपीसी अक्षम कर सकता हूं लेकिन एपीसी प्रदर्शन को बेहतर बनाता है! क्या कोई ज्ञात बग है या क्या मैं इन त्रुटियों को रोकने के लिए कुछ और कर सकता हूं? मैं PHP 5.2.4 के साथ उबंटू 8.04 एलटीएस का उपयोग कर रहा हूं।
संपादित/अद्यतन (टिप्पणियों से):
मैं ज़ेंड फ्रेमवर्क ऑटोलोडर का उपयोग करता हूं और एपीसी सक्षम करने से पहले ये त्रुटि कभी नहीं हुई। कुछ पलों पहले मुझे उदाहरण के लिए मिलता है कि त्रुटि: Fatal error: require(): Cannot redeclare class zend_db_adapter_abstract in /paths/app/lib/Zend/Db/Select.php on line 27
पूरे त्रुटि संदेश पढ़ें। कहा गया फ़ाइल दो बार शामिल न करें। 'Include_once' का प्रयोग करें। या उसमें विफल होने पर, 'if (! Class_defined ("xxx")) में सभी परिभाषाओं को लपेटें {' – mario
केवल include_once का उपयोग करने के अलावा, क्लास ऑटोलोडिंग का उपयोग करने के लिए एप्लिकेशन को पुन: आर्किटेक्ट करें, ताकि PHP केवल फाइलों को शामिल करे जब जरूरत। सामान्य ज्ञान की चीज़ों के साथ चिपके रहें, जैसे प्रति वर्ग एक वर्ग, आदि – Rob
xxx द्वारा आपका क्या मतलब है? xxx वास्तव में वह कक्षा है जिसे आप लोड करना चाहते हैं? –