2012-05-09 35 views
16

Tôi đã một mảng mà được xây dựng bằng cách sử dụng explode() chức năng, nhưng nhìn thấy làm thế nào tôi đang sử dụng nó với ngẫu nhiên/dữ liệu động, tôi thấy rằng các chỉ số tiếp tục thay đổi:Re-index phím mảng số

Array 
(
    [2] => Title: Warmly little before cousin sussex entire set Blessing it ladyship. 
    [3] => Snippet: Testing 
    [4] => Category: Member 
    [5] => Tags: little, before, entire 
) 

Tôi cần mảng được đặt hàng bắt đầu từ 0 luôn. Tôi đang thử nghiệm với các dữ liệu khác nhau và đôi khi nó bắt đầu ở mức 0, và với các thử nghiệm khác, nó bắt đầu ở các số khác nhau. Tôi đã nghiên cứu và đã xem qua Array starting at zero nhưng dường như chỉ áp dụng cho trường hợp cụ thể của người dùng đó. Mã tôi đang sử dụng để tạo mảng có thể được xem tại đây: https://stackoverflow.com/a/10484967/1183323

Tôi có thể làm như thế nào?

+5

Làm sao bạn xây dựng mảng này? Explode theo mặc định sẽ bắt đầu tại 0. – Jage

+1

Bạn có [đọc hướng dẫn] (http://www.php.net/manual/en/function.array-values.php) không? – symcbean

Trả lời

45
$your_new_array = array_values($your_old_array); 
+0

Điều này đã làm điều đó, nhưng nên có bất cứ điều gì khác tôi nên quan tâm về việc thực hiện chức năng này. – Tower

+0

Không. Theo hướng dẫn sử dụng, "array_values ​​() trả về tất cả các giá trị từ mảng đầu vào và các chỉ mục theo số lượng mảng." –

+3

Lưu ý rằng hướng dẫn không đảm bảo rằng thứ tự của các giá trị sẽ được giữ nguyên. – matt

11

Sử dụng array_merge() renumber mảng:

$your_old_array = array(2 => 'whatever', 19 => 'huh', 22 => 'yep'); 
$your_new_array = array_merge($your_old_array); 
print_r($your_new_array); 

Prints này:

Array ( 
    [0] => whatever 
    [1] => huh 
    [2] => yep) 
+0

Điều này cũng hoạt động, kết quả tôi đạt được là tương tự như 'mảng_values', cảm ơn! – Tower

+0

Điều này được gọi là JUGAD trong ngôn ngữ tiếng Hin-ddi và tiếng Urdu: D: P nhưng nó hoạt động .. (y) –

+1

Điều này tương tự như mảng_values ​​nhưng tốt hơn nếu bạn cũng có các khóa chuỗi trong mảng cùng với các phím số. array_merge() giữ các phím chuỗi như nó và sắp xếp lại chỉ các phím số. –

Các vấn đề liên quan