कैसे जांचें कि PHP में एक ऐरे associative है या sequential (indexed)?
सभी को नमस्कार! मैंने अभी PHP सीखना शुरू किया है और एक अजीब स्थिति का सामना किया। मुझे पता है कि PHP में दो प्रकार के arrays होते हैं: सामान्य (sequential) जिनमें 0 से संख्यात्मक keys होती हैं, और associative जिनमें keys स्ट्रिंग होती हैं। लेकिन असल में सब कुछ मिला-जुला है: एक array 0 key से शुरू हो सकता है, फिर स्ट्रिंग आ सकती है, और फिर से संख्या। या keys संख्याएँ हो सकती हैं लेकिन क्रम में नहीं (जैसे 0, 5, 10)।
मुझे एक फ़ंक्शन लिखना है जो फॉर्म से डेटा प्रोसेस करे। अगर array sequential है (यानी keys क्रम में हैं: 0, 1, 2, 3...), तो मैं एक लॉजिक लागू करता हूँ। अगर associative है (जैसे keys 'name', 'email', 'age'), तो दूसरी लॉजिक। लेकिन `array_keys()` के माध्यम से मानक जाँच स्पष्ट उत्तर नहीं देती, क्योंकि `[0 => 'a', 2 => 'b']` जैसा array औपचारिक रूप से संख्यात्मक है, लेकिन sequential नहीं है।
यहाँ एक उदाहरण है जो मुझे भ्रमित करता है:
```php
$arr1 = ['a', 'b', 'c']; // sequential
$arr2 = ['name' => 'John', 'age' => 30]; // associative
$arr3 = [0 => 'x', 1 => 'y', 3 => 'z']; // संख्यात्मक, लेकिन गैप के साथ
```