mảng của tôi trông như thế này:PHP phím mảng sắp xếp lại
array(
0 => 'val',
2 => 'val',
3 => 'val',
5 => 'val',
7 => 'val'
);
Làm thế nào tôi có thể sắp xếp lại các phím vì vậy nó sẽ đi như 0, 1, 2, 3, 4
?
mảng của tôi trông như thế này:PHP phím mảng sắp xếp lại
array(
0 => 'val',
2 => 'val',
3 => 'val',
5 => 'val',
7 => 'val'
);
Làm thế nào tôi có thể sắp xếp lại các phím vì vậy nó sẽ đi như 0, 1, 2, 3, 4
?
Sử dụng array_values:
$reindexed_array = array_values($old_array);
Bằng cách sử dụng sort($array);
Xem PHP tài liệu here.
Tôi muốn giới thiệu sort
trên array_values
vì nó sẽ không tạo mảng thứ hai. Với đoạn mã sau, bạn có hai mảng chiếm không gian: $ reindexed_array và $ old_array. Không cần thiết.
$reindexed_array = array_values($old_array);
array_splice($old_array, 0, 0);
Nó sẽ không sắp xếp mảng và sẽ không tạo ra một mảng thứ hai
Đơn giản và hoàn hảo vì nó không tạo mảng thứ 2 và không sửa đổi thứ tự các giá trị ... thx! –
array_splice($jam_array, 0, count($jam_array));
Để sắp xếp một mảng với thiếu chỉ số trung gian, với số đếm đơn đặt hàng i an toàn hơn. Vì vậy, 0
là chỉ mục đầu tiên và count($jam_array)
hoặc sizeof($jam_array)
trả lại vị trí thập phân của mảng, cụ thể là, chỉ mục cuối cùng.
hoàn hảo! dường như làm công việc – fxuser
giá trị mảng, mặc dù hợp lệ, không phải là những gì tôi muốn giới thiệu. Bên trong, nó gọi hàm tạo mảng và trả về một mảng mới. bằng cách sử dụng sắp xếp là do (nhanh) nhanh hơn, và ngắn hơn để viết, quá –
tôi không cần phải sử dụng mảng khác .. tôi chỉ đơn giản array_values () hiện tại – fxuser