Hướng dẫn dùng sorted map trong PHP
Mảng một chiều cơ bản
Các hàm sắp xếp áp dụng: Show Nội dung chính
Nội dung chính
Sự khác biệt giữa chúng chỉ đơn thuần là liệu các liên kết giá trị khóa được giữ (các Mảng đa chiều, bao gồm mảng đối tượng
Nếu bạn muốn sắp xếp Để làm điều đó, bạn cần tạo một chức năng so sánh .
Hàm đó có hai phần tử và phải trả về
Thông thường, bạn sẽ muốn sử dụng một chức năng ẩn danh làm cuộc gọi lại. Nếu bạn muốn sử dụng một phương thức hoặc phương thức tĩnh, hãy xem các cách khác để chỉ định một cuộc gọi lại trong PHP . Sau đó, bạn sử dụng một trong các chức năng sau:
Một lần nữa, chúng chỉ khác nhau ở chỗ chúng giữ các liên kết khóa-giá trị và sắp xếp theo giá trị hoặc khóa. Đọc tài liệu của họ để biết chi tiết. Ví dụ sử dụng:
Để làm quen với ý tưởng này, hãy thử điều này:
Tất cả những gì bạn đã làm là xác định một cách tùy chỉnh để so sánh hai mục, đó là tất cả những gì bạn cần. Điều đó làm việc với tất cả các loại giá trị. Nhân tiện, điều này hoạt động trên bất kỳ giá trị nào, các giá trị không phải là mảng phức tạp. Nếu bạn có một so sánh tùy chỉnh bạn muốn làm, bạn cũng có thể làm điều đó trên một mảng số đơn giản. sort sắp xếp theo tham chiếu và không trả lại bất cứ điều gì hữu ích!Lưu ý rằng các mảng sắp xếp tại chỗ , bạn không cần gán giá trị trả về cho bất cứ điều gì.
So sánh số tùy chỉnhNếu bạn muốn sắp xếp theo
Nhờ vào
PoCHr oF MATH, điều này trả về giá trị <0, 0 hoặc> 0 tùy thuộc vào việc Lưu ý rằng điều này sẽ không hoạt động tốt cho Các đối tượngNếu bạn có một mảng các đối tượng, nó hoạt động theo cùng một cách:
Chức năngBạn có thể làm bất cứ điều gì bạn cần trong một chức năng so sánh, bao gồm các chức năng gọi:
DâyMột lối tắt cho phiên bản so sánh chuỗi đầu tiên:
Người điều khiển tàu vũ trụPHP 7 đã giới thiệu toán tử tàu vũ trụ , hợp nhất và đơn giản hóa bằng / nhỏ hơn / lớn hơn so với các so sánh giữa các loại:
Sắp xếp theo nhiều lĩnh vựcNếu bạn muốn sắp xếp chủ yếu theo
Đối với những người quen thuộc, điều này tương
đương với một truy vấn SQL với Sắp xếp vào một hướng dẫn, trật tự tĩnhNếu bạn muốn sắp xếp các thành phần vào một "thứ tự thủ công" như "foo", "bar", "baz" :
Đối với tất cả những điều trên, nếu bạn đang sử dụng PHP 5.3 trở lên (và bạn thực sự nên), hãy sử dụng các hàm ẩn danh cho mã ngắn hơn và để tránh có một hàm toàn cầu khác trôi nổi xung quanh:
Đó là cách đơn giản sắp xếp một mảng đa chiều phức tạp có thể. Một lần nữa, chỉ cần nghĩ về mặt giảng dạy PHP làm thế nào để biết mục nào trong hai mục là "lớn hơn" ; hãy để PHP thực hiện việc sắp xếp thực tế. Ngoài ra, đối với tất cả những điều trên, để chuyển đổi giữa thứ tự tăng dần và giảm dần chỉ cần trao đổi
Sắp xếp một mảng dựa trên mảng khácVà sau đó là đặc thù
Kết quả dự kiến ở đây sẽ là:
Sử dụng
Kể từ phiên bản PHP 5.5.0, bạn có thể sử dụng
Kể từ phiên bản PHP 7.0.0, bạn cũng có thể trích xuất các thuộc tính từ một mảng các đối tượng.
146 hữu ích 5 bình luận chia sẻ |