Tôi có một ứng dụng trong PHP và JS. Khi tôi EVAL json mã hóa mảng PHP mảng thay đổi sắp xếp. Ví dụ: nếu tôi có một mảng trong PHP như sau:Chức năng js EVAL có thay đổi vị trí của các phần tử không?
<?php
$array = [148 => 'Plane', 149 => 'Car'];
?>
<script>
var array = eval(<?php echo json_encode($array)?>);
</script>
Khi tôi in mảng trong bảng điều khiển, các phần tử không có cùng vị trí. Bạn có biết làm thế nào điều này có thể xảy ra?
CẬP NHẬT
Cảm ơn câu trả lời nhưng tôi muốn giữ trật tự chính xác như nhau trong một cấu trúc JS, vì vậy tôi không muốn đặt hàng mảng bởi một lĩnh vực cụ thể. Có thể thứ tự nhận được từ DB giống như:
[148 => object, 155 => object, 133 => object]
Tôi muốn tạo một mảng như thế này trong JS theo thứ tự mà nó có (vị trí đến từ DB và nó phải là thứ tự đó). Có thể không?
Bạn không cần eval. 'var array = php echo json_encode ($ array)?>;' là đủ. –