Cách thanh lịch để sắp xếp các đối tượng trong PHP là gì? Tôi rất muốn thực hiện một cái gì đó tương tự như thế này.Sắp xếp đối tượng trong PHP
$sortedObjectArary = sort($unsortedObjectArray, $Object->weight);
Về cơ bản chỉ định mảng tôi muốn sắp xếp cũng như trường tôi muốn sắp xếp. Tôi nhìn vào phân loại mảng đa chiều và có thể có một cái gì đó hữu ích ở đó, nhưng tôi không thấy bất cứ điều gì tao nhã hay rõ ràng.
Đó Ví dụ thứ ba là về cơ bản nói, "Xin lỗi không có cách nào tiêu chuẩn cho một đối tượng để có một so sánh, chỉ cần viết một hàm tĩnh 'cmp_obj' trong đối tượng, và nhớ gọi usort với hàm đó." Được rồi, ngoại trừ cmp_obj đó không có ý nghĩa đặc biệt trong PHP. Có lẽ điều đó sẽ hữu ích nếu PHP có một cái gì đó giống như hàm '__cmp__' của Python như là tiêu chuẩn, hoặc giao diện' thực hiện so sánh 'của Java để nó có thể sắp xếp và sử dụng '<', '>', các bộ so sánh mà không đi sâu vào bất kỳ việc thực hiện nào của lớp muốn sắp xếp. Thật không may có vẻ như điều này cũng không thay đổi trong PHP7. – NoBugs
Bây giờ, điều đó sẽ làm cho PHP trở nên hợp lý và có thể sử dụng được, không thể có chúng ta? :) –
Không, chúng tôi không thể, nhưng chúng tôi thực sự cần một cách khác để thể hiện cùng một biểu thức trong PHP7 mặc dù https://wiki.php.net/rfc/combined-comparison-operator – NoBugs