2011-09-26 10 views
95

मैं सरणी है कि मैं तो अब ऐसा लगता है किPHP रीइंडेक्स सरणी?

$myarray [0] a->1 
     [1] a-7 b->3 
     [3] a-8 b->6 
     [4] a-3 b->2 

लग रहा है के रूप में आप देख सकते हैं [2] सभी मैं क्या करने की जरूरत याद आ रही है कुछ अनुक्रमित अनसेट पड़ा रीसेट अनुक्रमित है तो वे बताते हैं [0] - [3 ]।

+0

यह सबसे निश्चित रूप से का डुप्लिकेट नहीं है [** कैसे आप PHP में एक सरणी पुन: अनुक्रमणिका करते हैं? **] (http://stackoverflow.com/questions/5910 9 4/कैसे करें-आप-रीइंडेक्स-ए-एरे-इन-पीएचपी) समाधान साझा करना डुप्लिकेट स्थापित नहीं करता है। –

उत्तर

212

उपयोग array_values

$myArray = array_values($myArray); 

इसके अलावा कुछ अन्य php समारोह चाबियाँ की रक्षा नहीं करते हैं, अर्थात सूचकांक रीसेट:

$myarray = array_values($myarray); 
+1

मुझे यह पसंद है। क्या कुछ ऐसा है जो PHP नहीं कर सकता है ?! (उसको जवाब न दें) – pbarney

70
$myarray = array_values($myarray); 

array_values

+16

आपका उत्तर स्वीकार्य उत्तर से 21 सेकंड पहले था। – Sonny

2

यह array_values ​​() का उपयोग करने की तुलना में सबसे सरल जवाब नहीं हो सकता है।

प्रयास करें इस

$array = array(0 => 'string1', 2 => 'string2', 4 => 'string3', 5 => 'string4'); 
$arrays =$array; 
print_r($array); 
$array=array(); 
$i=0; 
    foreach($arrays as $k => $item) 
    { 
    $array[$i]=$item; 
     unset($arrays[$k]); 
     $i++; 

    } 

print_r($array); 

Demo