PHP में Enum (गणना) का कार्यान्वयन: सही तरीके से कैसे करें?
सभी को नमस्कार! मैं PHP में नया हूँ (लगभग एक साल से लिख रहा हूँ), और मुझे एक समस्या का सामना करना पड़ा। प्रोजेक्ट में ऑर्डर की स्थितियाँ स्टोर करनी हैं: "नया", "प्रोसेसिंग में", "भेजा गया", "डिलीवर किया गया"। अभी मैं सामान्य constants का उपयोग कर रहा हूँ:
```php
define('STATUS_NEW', 1);
define('STATUS_PROCESSING', 2);
define('STATUS_SHIPPED', 3);
define('STATUS_DELIVERED', 4);
```
लेकिन यह असुविधाजनक है: पहली बात, मैं गलती से function में status के बजाय कोई भी संख्या भेज सकता हूँ, और PHP कोई त्रुटि नहीं देगा। दूसरी बात, अगर status के लिए विवरण या method जोड़ने की आवश्यकता हो (जैसे, "क्या ऑर्डर रद्द किया जा सकता है?"), तो अलग-अलग functions लिखने पड़ते हैं। तीसरी बात, फॉर्म के dropdown में status की सूची दिखाते समय मैं keys और values में भ्रमित हो जाता हूँ।
मैंने सुना है कि PHP 8.1 में native enum आए हैं, लेकिन प्रोजेक्ट PHP 7.4 पर चल रहा है, और अभी अपडेट नहीं कर सकता। पुराने PHP संस्करणों में enum को सही तरीके से कैसे लागू करें? कुछ विश्वसनीय चाहिए, जिसमें type checking हो और methods जोड़ने की संभावना हो। कोड उदाहरणों के लिए आभारी रहूँगा!
<<>>