大佬教程收集整理的这篇文章主要介绍了PHP:使用类似Java的Comparable对自定义类进行排序?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我一直在扫描网络,找到任何一种类似Java的类比较方法,但没有太多运气.我尝试实现__equals()但没有运气.我也试过__toString().我的班级看起来像这样:
class Genre { private $genre; private $count; ... }
$Collection = array(..); // An array of Genre objects // Either you must make count a public variable,or create // an accessor function to access it function CollectionSort($a,$b) { if ($a->count == $b->count) { return 0; } return ($a->count < $b->count) ? -1 : 1; } usort($Collection,"CollectionSort");
如果你想制作一个更通用的收藏系统,你可以试试这样的东西
interface Sortable { public function GetSortField(); } class Genre implements Sortable { private $genre; private $count; public function GetSortField() { return $count; } } class Collection { private $Collection = array(); public function AddItem($Item) { $this->Collection[] = $Item; } public function GetItems() { return $this->Collection; } public function Sort() { usort($this->Collection,'GenericCollectionSort'); } } function GenericCollectionSort($a,$b) { if ($a->GetSortField() == $b->GetSortField()) { return 0; } return ($a->GetSortField() < $b->GetSortField()) ? -1 : 1; } $Collection = new Collection(); $Collection->AddItem(...); // Add as many Genre objects as you want $Collection->Sort(); $SortedGenreArray = $Collection->GetItems();
以上是大佬教程为你收集整理的PHP:使用类似Java的Comparable对自定义类进行排序?全部内容,希望文章能够帮你解决PHP:使用类似Java的Comparable对自定义类进行排序?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。