草庐IT

php - 根据两个键值按 ASC 顺序对数组进行排序?

我有一个存储在一个变量中的数组。数组如下:Array([0]=>Array([employee_name]=>Amit[today_date]=>2018-01-11)[1]=>Array([employee_name]=>Amit[today_date]=>2018-01-09)[2]=>Array([employee_name]=>Amit[today_date]=>2018-01-10)[3]=>Array([employee_name]=>GURVINDER[today_date]=>2018-01-11)[4]=>Array([employee_name]=>GURVINDE

PHP - 根据另一个数组的元素对数组元素进行排序 :)

所以我有两个数组。其中之一看起来像这样(它的值或元素的数量可以改变):array('4dec','def3','a3d6','d12f');和另一个:array(array('id'=>'d12f','name'=>'John'),array('id'=>'a5f1','name'=>'Kathy'),array('id'=>'def3','name'=>'Jane'),array('id'=>'a3d6','name'=>'Amy'),array('id'=>'4dec','name'=>'Mary'),array('id'=>'ecc2','name'=>'Fred'));(这个不

php - 合并两个排序的数组,结果数组也应该排序

假设您有两个结构相同但数组数量不同的数组:$arr1=array(array(1,"b"),array(2,"a"),array(5,"c"));$arr2=array(array(3,"e"));现在,$arr1和$arr2中的数据已排序,现在我希望合并这两个数组,所以我这样做了:$res=array_merge($arr1,$arr2);然后我得到这样的输出:1-b2-a5-c3-e但是,我也希望有一个这样的排序$res:1-b2-a3-e5-c我想知道PHP中是否有一个函数可以自动执行此操作,而无需我编写自己的函数?或者,如果我想(稍后)按下一个参数添加排序,请告诉我哪种方法最好

PHP多维数组(usort)

我有一个这样的关联数组Array(["News1"]=>Array([text]=>tests[language]=>[advertiserCompetitionScale]=>5[avgSearchVolume]=>7480000[lastMonthSearchVolume]=>9140000)["News2"]=>Array([text]=>personalitytests[language]=>[advertiserCompetitionScale]=>5[avgSearchVolume]=>165000[lastMonthSearchVolume]=>201000)["News

JavaScript 与 PHP 对数组进行排序

我正在从用户那里获取信息。然后我要对信息进行排序(按字母数字顺序),然​​后再次将其返回给用户,因此不会将其保存到数据库。我可以使用JavaScript(您甚至可以依靠jQuery)或PHP进行排序。由于数据可能包含很多行,我想知道以下排序方法:假设我使用名为lines的数组标记所有行在JavaScriptlines.sort()中;在PHP中sort($lines);我非常想知道客户端或服务器端是否会以不同方式执行此操作,主要是在速度方面。另外,如果准确性很重要,那么它们会有什么不同吗?请解释原因。 最佳答案 1)jQueryso

PHP 对具有特殊字符的数组进行排序

我知道这个问题被问过很多次,但我仍然找不到防弹解决方案。这是我的数组,需要按字母顺序排序。setlocale(LC_ALL,'sl_SI.utf8');$a=['č'=>[...],'a'=>[...],'š'=>[...],'u'=>[...]]如何按键排序? 最佳答案 引用这个例子:-SortanarraywithspecialcharactersinPHP解释:-使用array_keys()方法获取数组键根据iconv()和strcmp()函数对键进行排序迭代排序后的键数组并从初始数组中获取对应的值。将此键值对保存到结果数组像

php - 按分数和用户名对多维数组进行排序

我有一个包含用户名和分数的数组。我先按最高分排序。它工作得很好,但是那些具有相同分数的人我希望他们按名称排序,而其余分数为0的人也必须按名称排序。我正在使用此函数按r_nb_today(即分数)排序:functionsortByNbToday($a,$b){$a=$a['r_nb_today'];$b=$b['r_nb_today'];if($a==$b)return0;return($a>$b)?-1:1;}usort($disp_user_arr,'sortByNbToday');这是数组输出:Array([0]=>Array([u_id]=>9[u_name]=>Souhaila

php - 使用特殊键对数组中的数据进行排序

如果键不仅仅是字符串(乍一看),但包含由字符“_”分隔的数字,如何对数组中的数据进行排序例如:id_1_2_-1.25_0id_1_2_-0.25_0id_1_2_1.75_0id_1_2_3_0id_1_2_-4_0id_1_2_0_0ksort()不能用,因为-1.25之类的值前的“负号”不被识别为负数,而是特殊符号重要!!我不能只分隔一个数字(-1.25、-0.25、1.75、3、-4、0),其他数字也可能不同,例如id_9_4_-2.25_1并且数组按所有数字排序字符“_”fe首先是9,然后是4,然后是-2.25,最后一个是1我需要结果(排序键):id_1_2_-4_0id_1

php - 按另一个数组的键对数组排序

有2个数组,长度相同,键也相同:$a1=[1=>2000,65=>1354,103=>1787];$a2=[1=>'hello',65=>'hi',103=>'goodevening'];asort($a1);a1和a2的键是来自数据库的id。a1按值排序。排序后,我们如何在a2中使用相同的排序顺序?谢谢! 最佳答案 我相信这行得通:$a1=array(1=>2000,65=>1354,103=>1787);$a2=array(1=>'hello',65=>'hi',103=>'goodevening');asort($a1);//

php - 按子值对父数组排序

如何按任何子值(即:post_id、用户名等...)对以下数组进行排序?Array([0]=>Array([id]=>10[post_id]=>398[user_id]=>0[view_date]=>2010-11-2015:26:00[views]=>4[username]=>guest)[1]=>Array([id]=>9[post_id]=>397[user_id]=>1[view_date]=>2010-11-1923:35:39[views]=>1[username]=>FireG)[2]=>Array([id]=>8[post_id]=>398[user_id]=>1[vi