Khóa mảng đa chiều PHP
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 Show 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 PHPNế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ímTrong 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
Mảng đa chiều có chỉ mụcKhi bạn không chỉ định khóa trong khi tạo mảng đa chiều PHP, các chỉ mục sẽ tự động được gán cho các phần tử. Bây giờ bạn có thể sử dụng các chỉ mục giống như cách bạn đã làm với mảng một chiều. Bạn có thể sử dụng Vòng lặp For/Vòng lặp While để lặp qua mảng lồng nhau và sử dụng các phần tử như trong mã ví dụ bên dưới Để xử lý việc tìm kiếm một mảng nhiều chiều, bạn có thể sử dụng câu lệnh 5 hoặc hàm 0Một mảng đa chiều PHP có thể được tìm kiếm để xem nó có giá trị nhất định hay không Hãy xem một ví dụ về việc thực hiện tìm kiếm. Giả sử bạn có một mảng nhiều chiều với cấu trúc sau
Để tìm kiếm mảng theo giá trị của nó, bạn có thể sử dụng câu lệnh 5Bạn cần lặp qua mảng và xem liệu một trong các mảng con có giá trị cụ thể không Ví dụ: giả sử bạn muốn lấy mảng có giá trị 2 là 3
Lưu ý rằng toán tử so sánh trong đoạn mã trên sử dụng gấp ba lần bằng nhau 4Điều này có nghĩa là loại giá trị được so sánh phải giống nhau Đoạn mã trên sẽ tạo ra đầu ra sau
Trong PHP5. 5 trở lên, bạn cũng có thể sử dụng hàm 0 kết hợp với hàm 6 để tìm mảng thỏa mãn điều kiệnXem ví dụ bên dưới 0Đoạn mã trên sẽ tạo ra đầu ra sau 1Hãy tạo một chức năng tùy chỉnh từ mã tìm kiếm để bạn có thể thực hiện tìm kiếm động hơn dựa trên khóa và giá trị Hàm tùy chỉnh này chấp nhận ba tham số
Chức năng có thể được viết như sau 5Để xử lý trường hợp không tìm thấy giá trị cụ thể, bạn cần thêm điều kiện 0 vào hàmBạn có thể trả lại 1 hoặc 2 khi không tìm thấy 3 0Bây giờ bạn có thể sử dụng hàm 4 bất cứ lúc nào bạn cần tìm kiếm một mảng nhiều chiềuDưới đây là một số ví dụ 2Đoạn mã trên sẽ tạo ra đầu ra sau 3Bây giờ bạn đã học cách tìm kiếm một mảng nhiều chiều trong PHP Khi cần tìm một mảng có giá trị cụ thể, bạn chỉ cần gọi hàm 4 ở trên
Làm cách nào để lấy khóa từ mảng đa chiều trong PHP?Sử dụng vòng lặp foreach . Chúng ta có thể sử dụng vòng lặp foreach để truy xuất giá trị của từng khóa được liên kết bên trong mảng kết hợp đa chiều.
Làm cách nào để xóa khóa mảng đa chiều trong PHP?Sử dụng hàm unset() . Hàm unset() dùng để xóa phần tử khỏi mảng. Hàm unset được sử dụng để hủy bất kỳ biến nào khác và sử dụng tương tự để xóa bất kỳ phần tử nào của một mảng. Lệnh bỏ đặt này lấy khóa mảng làm đầu vào và xóa phần tử đó khỏi mảng.
Array_keys() dùng để làm gì trong PHP?Mảng_keys() là một hàm tích hợp sẵn trong PHP và được sử dụng để trả về tất cả các khóa của và mảng hoặc tập hợp con của các khóa.
Làm cách nào để tạo một mảng nhiều chiều trong PHP?Bạn tạo một mảng nhiều chiều sử dụng cấu trúc array() , giống như tạo một mảng thông thường. Sự khác biệt là mỗi phần tử trong mảng bạn tạo chính là một mảng. Ví dụ. $myArray = mảng(mảng(giá trị1,giá trị2,giá trị3),mảng(giá trị4,giá trị5,giá trị6),mảng(giá trị7,giá trị8,giá trị9)); |