PHP中的排序函数,对于关联数组,都是根据key值排序,而无法根据value的某个字段值排序。
WordPress 提供了函数 wp_list_sort ,正好填补了这个空白。(虽然,造这样一个轮子,并不复杂;但是,避免重复造轮子是美德。)
函数原型:
wp_list_sort( array $list, string|array $orderby = array(), string $order = 'ASC', bool $preserve_keys = false )
$list
(array) (必须的) 一个数组或者对象
$orderby
(string|array) (可选的) 一个字段名,或者一个数组,有字段名=>排序方式组成(比如:['field1' => 'ASC', 'field2' => 'DESC'])。
默认: array()
$order
(string) (可选的) 升序 'ASC' 或者 'DESC'。只有在$orderby是字符串时有效。
默认: 'ASC'
$preserve_keys
(bool) (可选的) 是否保留原来的key。
默认: false
使用举例:
$animals = [
'alligator' => [ 'name' => 'alligator', 'fly' => false, 'class' => 'reptile' ],
'dog' => [ 'name' => 'dog', 'fly' => false, 'class' => 'mammal' ],
'cat' => [ 'name' => 'cat', 'fly' => false, 'class' => 'mammal' ],
'falcon' => [ 'name' => 'falcon', 'fly' => true, 'class' => 'bird' ],
'bat' => [ 'name' => 'bat', 'fly' => true, 'class' => 'mammal' ],
];
$result = wp_list_sort( $animals, 'class' );
$result = wp_list_sort( $animals, 'name', 'DESC' );
$result = wp_list_sort( $animals, 'name', 'ASC', true );
-
WordPress函数:number_format_i18n 数字国际化WordPress函数:number_format_i18n 数字国际化
-
WordPress函数:date_i18n 日期国际化WordPress函数:date_i18n 日期国际化
-
WordPress函数:esc_html_e 转义翻译的字符串并显示WordPress函数:esc_html_e 转义翻译的字符串并显示
-
WordPress 6.5移除区块样板菜单项的方法WordPress 6.5新增的区块样板菜单项,可将不同区块组合成一个新的区块模板,方便重复使用。
-
WordPress做多语言企业网站近期常用小伙伴问追格小编,有没有计划做双语WordPress企业官网主题。
-
WordPress插件:LiteSpeed Cache 缓存插件LiteSpeed Cache是一款实用的WordPress缓存插件,专为使用LiteSpeed服务器的用户设计。它能显著提高网站加载速度,改善用户体验。
暂无评论,抢个沙发...