बिल्ट-इन सपोर्ट के बिना PHP में Enum (Enumeration) को सही तरीके से कैसे लागू करें?
सभी को नमस्कार! मैं एक शुरुआती PHP डेवलपर हूँ और एक समस्या का सामना कर रहा हूँ। अन्य भाषाओं (Java, C#) में एक सुविधाजनक enum कंस्ट्रक्ट है जो कॉन्स्टेंट का एक फिक्स्ड सेट परिभाषित करने की अनुमति देता है। उदाहरण के लिए, ऑर्डर स्टेटस: "नया", "प्रोसेसिंग में", "भेजा गया", "डिलीवर किया गया"।
PHP में मुझे बिल्ट-इन enum नहीं मिला। मैंने क्लास के सामान्य कॉन्स्टेंट का उपयोग करने की कोशिश की:
class OrderStatus {
const NEW = 'new';
const PROCESSING = 'processing';
const SHIPPED = 'shipped';
const DELIVERED = 'delivered';
}
$status = OrderStatus::NEW;
लेकिन यह असुविधाजनक है। मैं यह जाँच नहीं सकता कि वेरिएबल $status में केवल अनुमत मानों में से एक है। गलती से $status = 'invalid_status' असाइन किया जा सकता है, और कोई त्रुटि नहीं होगी। साथ ही, प्रत्येक मान में मेथड जोड़ने का कोई तरीका नहीं है (उदाहरण के लिए, हिंदी में स्टेटस का विवरण प्राप्त करना)।
PHP में Enum को सही तरीके से कैसे व्यवस्थित करें? क्या कोई पैटर्न हैं?