PHP में ऐरे से एलिमेंट को सही तरीके से कैसे हटाएं और keys को पुनः अनुक्रमित करें? unset() के साथ समस्याएं
सभी को नमस्कार! मैं PHP में नया हूं और ऐरे से एलिमेंट हटाने में एक समस्या का सामना कर रहा हूं।
मेरे पास उपयोगकर्ता नामों का एक array है:
```php
$users = ['अन्ना', 'इवान', 'मारिया', 'पीटर'];
```
मुझे दूसरा एलिमेंट (इवान) हटाना है। मैंने पढ़ा कि इसके लिए `unset()` फंक्शन का उपयोग किया जाता है, और मैंने यह कोड लिखा:
```php
unset($users[1]);
print_r($users);
```
लेकिन परिणाम ने मुझे बहुत आश्चर्यचकित किया! तीन एलिमेंट वाले array (keys 0, 1, 2) के बजाय मुझे यह मिला:
```
Array
(
[0] => अन्ना
[2] => मारिया
[3] => पीटर
)
```
Keys असंगत हो गईं: 0, 2, 3। `count($users)` के साथ `for` लूप का उपयोग करने पर मैं key 2 वाले एलिमेंट को छोड़ देता हूं। साथ ही, मैंने key के बजाय value के आधार पर एलिमेंट हटाने की कोशिश की — उदाहरण के लिए, "मारिया" नाम वाले सभी उपयोगकर्ताओं को हटाना। इसे सही तरीके से कैसे करें?
मुझे चाहिए:
1. केवल एलिमेंट हटाना ताकि array अनुक्रमिक रहे (keys 0,1,2)।
2. किसी विशेष value वाले सभी एलिमेंट हटाना।
3. यह समझना कि `unset()` और `array_values()` के बीच क्या अंतर है।