×

jsonarray排序 js 排序

php根据json其中的一个键值大小重新排序?希尔排序是怎么排的呀

admin admin 发表于2022-07-11 14:53:48 浏览112 评论0

抢沙发发表评论

php根据json其中的一个键值大小重新排序


在php对json直接操作成本太高,所以应该将json先转化为数组,对数组排序就很好弄了,具体操作如下:
//先将json转化为数组:
$people =json_decode($people,true);
//排序方法
function my_sort($arrays,$sort_key,$sort_order=SORT_ASC,$sort_type=SORT_NUMERIC ){
if(is_array($arrays)){
foreach ($arrays as $array){
if(is_array($array)){
$key_arrays = $array[$sort_key];
}else{
return false;
}
}
}else{
return false;
}
array_multisort($key_arrays,$sort_order,$sort_type,$arrays);
return $arrays;
}
//测试效果
$person = array(
array(’num’=》1,’sex’=》’1’),
array(’num’=》2,’sex’=》’0’),
array(’num’=》3,’sex’=》’1’),
array(’num’=》4,’sex’=》’1’),
array(’num’=》5,’sex’=》’0’),
array(’num’=》6,’sex’=》’0’),
array(’num’=》7,’sex’=》’0’)
);

var_dump($person);

$person = my_sort($person,’num’,SORT_ASC,SORT_STRING);

var_dump($person);

$person = my_sort($person,’sex’);

var_dump($person);

希尔排序是怎么排的呀


d是3,意思就是把位置为1+3*0,1+3*1,1+3*2……放在一起
2+3*0,2+3*1,2+3*2……放在一起
3+3*0,3+3*1,3+3*2……放在一起

JS基础包括写什么呀


js可以对网页的内容进行修改,例如增加和删除:文字、图片、表格、视频、…… ……等一系列在html中的东西。

js可以进行计算,实现一些算法,例如找到搜索、数据计算、……

js也能做动画,例如图片的移动、放缩、旋转(涉及css),但是很麻烦,不过好在网上有一些js的库(就是别人写好函数了,你调用),例如jQuery(本质也是js)。

其他的功能属于不太直观的了,先不详述。写法就是直接将书写代码,插入到html等网页文件中,用户的浏览器打开网页后,就可以执行js代码了。在项目中,一般把相关的功能或者常用的功能的代码直接写在一个文本文件里,然后后缀为 .js ,由网页引用。好处是用户第一次加载完网页后,第二次不需要重新读取js。
-排序