Tuy nhiên, đôi khi bạn muốn lưu trữ các giá trị có nhiều hơn một khóa. Đối với điều này, chúng ta có các mảng đa chiều
PHP - Mảng đa chiều
Mảng nhiều chiều là mảng chứa một hoặc nhiều mảng
PHP hỗ trợ các mảng đa chiều có độ sâu hai, ba, bốn, năm hoặc nhiều cấp độ hơn. Tuy nhiên, mảng sâu hơn ba cấp khó quản lý đối với hầu hết mọi người
Kích thước của một mảng cho biết số lượng chỉ số bạn cần để chọn một phần tử
- Đối với mảng hai chiều, bạn cần hai chỉ số để chọn một phần tử
- Đối với mảng ba chiều, bạn cần ba chỉ số để chọn một phần tử
PHP - Mảng hai chiều
Mảng hai chiều là mảng của mảng [mảng ba chiều là mảng của mảng của mảng]
Đầu tiên, hãy nhìn vào bảng sau
NameStockSoldVolvo2218BMW1513Saab52Land Rover1715Chúng ta có thể lưu trữ dữ liệu từ bảng trên trong một mảng hai chiều, như thế này
$cars = mảng [
mảng["Volvo",22,18],
mảng["BMW",15,13],
array["Saab",5,2],
array["Land Rover",17,15]
];
Bây giờ mảng hai chiều $cars chứa bốn mảng và nó có hai chỉ số. hàng và cột
Để có quyền truy cập vào các phần tử của mảng $cars, chúng ta phải trỏ đến hai chỉ số [hàng và cột]
Ví dụ
echo $cars[0][0]. ". Trong kho. ". $car[0][1]. ", đã bán. ". $car[0][2]. ".
";
echo $cars[1][0]. ". Trong kho. ". $car[1][1]. ", đã bán. ". $car[1][2]. ".
";
echo $cars[2][0]. ". Trong kho. ". $car[2][1]. ", đã bán. ". $car[2][2]. ".
";
echo $cars[3][0]. ". Trong kho. ". $car[3][1]. ", đã bán. ". $car[3][2]. ".
";
?>
Chúng ta cũng có thể đặt một vòng lặp for
bên trong một vòng lặp for
khác để lấy các phần tử của mảng $cars [chúng ta vẫn phải trỏ đến hai chỉ số]
Mục đích của mảng là lưu trữ dữ liệu một cách có tổ chức và cho phép truy cập dễ dàng bằng chỉ mục hoặc khóa. Bạn đã học về mảng một chiều trong bài học trước. Mở rộng cùng một mảng, hãy tưởng tượng nếu bạn có thể lưu trữ dữ liệu theo hàng và cột. Có thể lưu trữ các chiều khác nhau của dữ liệu trong một mảng với mảng nhiều chiều. Nó có thể được xem như một mảng với trong một mảng khác. Nói tóm lại, một mảng lồng nhau là một mảng nhiều chiều
Không thể biểu diễn dữ liệu nhiều chiều trong mảng một chiều. Vì vậy, chúng ta cần một mảng lồng nhau. Đây là cú pháp của mảng nhiều chiều-
$MultiDimenArray-Name=array[ [key=>] mảng[ [key=>]array…. ]]]
Bạn có thể định nghĩa một mảng như một phần tử của một mảng. Một mảng được lồng trong một mảng khác có thể được tạo bằng một khóa chuỗi giống như một mảng kết hợp hoặc không có khóa. Nếu không có khóa nào được chỉ định thì các giá trị chỉ mục sẽ tự động được phân bổ cho các phần tử mảng giống như một mảng được lập chỉ mục
Ví dụ về Mảng đa chiều PHP
Nếu bạn muốn lưu trữ dữ liệu của những người bán hàng khác nhau ở các thành phố khác nhau trong các quý khác nhau của năm, mảng đa chiều PHP sẽ là một công cụ hữu ích
nhân viên bán hàng. Andy
Quý 1Quý 2Quý 3Quý 4New York36239888Chicago78564537Denver34783621nhân viên bán hàng. Bob
Quý 1Quý 2Quý 3Quý 4New York22677198Chicago76538361Denver45692345nhân viên bán hàng. Chris
Quý một Quý hai Quý ba Quý bốnNew York22675645Chicago76537836Denver22677198Mảng đa chiều có phím
Trong ví dụ sau, các phần tử mảng lồng nhau được liên kết với các khóa. Vì vậy, trong khi truy cập chúng, các khóa phải được sử dụng giống như bạn đã làm trong mảng kết hợp