我有一個從MySQL查詢行數組。我需要做的是按字段之一對其進行排序(無符號整型)。我通過引用來查看,但不知道我究竟如何對對象數組進行排序,因爲PHP似乎沒有像運算符重載(您在C++中執行的操作)的情況,並且一些現有函數表示它們不穩定,這意味着2個相同的元素,它們在排序數組中的位置是未定義的,這聽起來真是怪異的IMO。 那麼,當你需要對一組對象進行排序時,PHP中的一般方法是什麼?如何通過PHP中的對象字段對對象數組進行排序?
0
A
回答
1
您需要編寫自己的函數來進行比較。一旦你有這個功能,你可以使用usort - http://php.net/manual/en/function.usort.php
請注意,這也適用於排序對象數組,你只需要改變你的比較函數。
+0
如果兩個成員比較相等,它們在排序數組中的相對順序是未定義的。 我可以做到這一點,以便我的比較函數永遠不會返回0,並且完全像「<」運算符一樣操作? –
+0
當然可以。所有usort()函數關心的是它可以將2件事傳遞給你的函數,並且它返回-1,1或0.只要決定是否需要相等的值總是返回爲「小於」或「大於」並去爲它:) – ivanivan
相關問題
- 1. 按對象中數字字段對數組進行排序
- 2. 如何通過對象的屬性對對象數組進行排序?
- 3. 如何通過每個對象的屬性對對象數組進行排序
- 4. 如何通過element.name對javascript對象數組進行排序
- 5. 如何通過NSString屬性對對象數組進行排序
- 6. 通過鍵值對JavaScript數組中的對象進行排序
- 7. 如何基於對象鍵值對PHP數組中的對象進行排序?
- 8. 如何按對象值對對象數組進行排序?
- 9. 如何通過對象的父母進行排序對象的數組
- 10. 如何通過數字參數對對象數組進行排序?
- 11. 如何按數字升序對對象數組進行排序?
- 12. 如何通過嵌套對象字段進行排序?
- 13. 通過自定義對象的子對象屬性對數組進行排序?
- 14. 通過屬性值對JavaScript對象數組進行排序
- 15. 通過包含在自定義對象中的字典對自定義對象數組進行排序:如何?
- 16. 通過對象屬性對對象的javascript數組排序
- 17. 如何在Javascript中對數組中的對象進行排序?
- 18. Python:如何通過兩個字段對數組進行排序?
- 19. 如何對Dlang中的對象數組進行排序?
- 20. 如何對其中的日期對象數組進行排序?
- 21. 如何對數組中的日期對象進行排序?
- 22. 如何對集合MongoDB中的對象數組進行排序?
- 23. 如何通過嵌套的IEnumerable對象對IEnumerable對象進行排序?
- 24. 如何通過PHP中的多個字段對多維數組進行排序?
- 25. 如何使用JavaScript按字段的值對對象數組進行排序?
- 26. 如何通過stdClass對象內的通用元素對stdClass對象的數組進行排序?
- 27. 對打字稿中的對象數組進行排序?
- 28. 如何通過包含類對象的特定值對數組進行排序?
- 29. Scala如何對對象字段列表(Object.field)進行排序?
- 30. 如何在Java中對對象數組進行排序
[usort()](http://www.php.net/manual/en/function.usort.php) –
http://stackoverflow.com/questions/8456029/how-does-usort-work – 2016-12-15 19:02:42