मुझे उम्मीद थी कि अगर मैं की तरह, एक अलग नाम स्थान में स्थिरांक परिभाषित करने के लिए किए गए:ऑटोलोडिंग स्थिरांक?
namespace config\database\mysql;
const HOST = 'localhost';
const USER = 'testusr';
const PASSWORD = 'testpwd';
const NAME = 'testdb';
कि मैं __autoload
करने के लिए उपयोग करने में सक्षम होगा उन्हें स्वचालित रूप से शामिल हैं:
function __autoload($className)
{
echo "Autoload: {$className}\n";
$class_file = str_replace('\\', '/', $className) . ".php";
if(file_exists($class_file)) {
include $class_file;
}
}
echo config\database\mysql\HOST;
लेकिन यह काम नहीं करता। __autoload
निरंतर के लिए नहीं कहा जाता है क्योंकि यह कक्षाओं के साथ है, मुझे Undefined constant
त्रुटि के साथ छोड़कर।
कुछ तरीकों से मैं स्थिरांक के लिए __autoload
कक्षा का अनुकरण कर सकता हूं?
धन्यवाद! यह आशाजनक लग रहा है। हालांकि मुझे डमी कक्षाओं में उन्हें लपेटने का शौक नहीं है, लेकिन ऐसा लगता है कि यह काम करता है। – Atli