草庐IT

php - 考试成绩由高到低排序

我为我的学生做了一个简单的基于PHP的考试。结果在数据库中记录为“q1”、“q2”、“q3”、“q4”和“q5”。正确答案记录为"is",错误答案记录为“否”。有5道题,我希望总分是100分。所有功能都按我希望的方式工作,但问题是,我不知道如何将结果从高到低排序。非常感谢任何帮助!$result=mysqli_query($db,"SELECT*FROMtable");while($row=mysqli_fetch_array($result)){$score=0;echo''.$row["name"].''.$score;} 最佳答案

php - 使用模数排序

我正在尝试使用uksort将列表排序到列中。数组已经进行了alpha排序,所以它就像array('A','B','C','D','E','F','G','H','I','J','K','L','M')在html中显示为float元素:ABCDEFGHIJKLM我希望它重新排序以便显示如下:AEHKBFILCGJMD所以排序后的数组将是:array('A','E','H','K','B','F','I','L','C','G','J','M','D'基本上与Sortingalistalphabeticallywithamodulus相同但对于PHP。我已经尝试采用javascript的解

php - 如何根据值的实例数对数组进行排序?

这个问题在这里已经有了答案:HowcanIsortanarraybynumberofoccurrenceofitsvalues?(4个答案)关闭4年前。我想在php中根据值的出现次数对数组进行排序。Array(Switzerland,Switzerland,Switzerland,Switzerland,Italy,Italy,Germany,France,France,France)像这样...Array(Switzerland,Switzerland,Switzerland,Switzerland,France,France,France,Italy,Italy,Germany,)

php - 如何在字符串中的某个字符之后按字母顺序对php数组进行排序

我有两个php数组。并对这些数组中的每一个都有不同的排序问题:1)首先包含域列表:values[0]="absd.com";values[1]="bfhgj.org";values[2]="sdfgh.net";values[3]="sdff.com";values[4]="jkuyh.ca";我需要按DOMAIN值的字母顺序对这个数组进行排序,换句话说,按“.”之后的值排序,因此排序后的域将如下所示:values[0]="jkuyh.ca";values[1]="absd.com";values[2]="sdff.com";values[3]="sdfgh.net";values[4

php - 在php中按照另一个数组的值的顺序对数组进行排序

是否有更好的方法按照$tabdocids值的顺序对$datas数组进行排序?foreach($tabdocidsas$ordered_id){foreach($datasas$doc)if($doc->docid==$ordered_id)$ordered[]=$doc;}$datas=$ordered; 最佳答案 去罗马的一条路...#forcollect$ordered=array_flip($tabdocids);//tookeeptheorderfromthe$tabdocidsarray_map(function($doc

php - 按另一个预定义的、非详尽的数字数组对数字数组进行排序,然后升序排序

给定两个数组$A1和$A2,对$A1进行排序,使元素之间的相对顺序相同如$A2中的那些。对于$A2中不存在的元素,将它们按升序移动到数组的后面。$A1=[2,1,2,5,7,1,9,3,6,8,8];$A2=[2,1,8,3];期望的输出:[2,2,1,1,8,8,3,5,6,7,9]编码尝试:$sorted=array();foreach($a1as$key=>$value){if(in_array($value,$a2)){$sorted[array_search($value,$a1)]=$value;}} 最佳答案 这可以通

PHP按字段名对多维数组进行排序

我已尝试调整此代码以用于对命名键/字段上的多维数组进行排序。该字段是一个整数,我需要将其从最小到最大排序。functionmyCmp($a,$b){returnstrcmp($a["days"],$b["days"]);}uasort($myArray,"myCmp");这按我的需要对数组进行了排序,但顺序错误。目前它从最大到最小排序,而不是使用自然顺序。我需要按自然顺序从小到大排序(例如,2在5、12和24之前)。 最佳答案 strnatcmp()是你的friend例如(使用php5.3闭包/anonymousfunction):

PHP 按索引对二维数组进行排序(非关联)

此代码无法正常运行,但它表明了我正在尝试做的事情:functionsort_2d_by_index($a,$i){functioncmp($x,$y){//Nestedfunction,can'tfind$i//(global$idefeatsthepurposeofpassinganarg)if($x[$i]==$y[$i]){return0;}return($x[$i]必须有更好的方法来做到这一点。我一直在研究ksort()、multisort()和各种各样的方法,直到我厌倦了尝试将其全部解决。情况是这样的:我有一个二维数组...array(array(3,5,7),array(2

php - 在 PHP 中对二维数组进行排序

我有一个如下所示的数组:Array([90]=>Array([1056]=>44.91[1055]=>53.56[1054]=>108.88[1053]=>23.28),[63]=>Array([1056]=>44.44[1055]=>53.16[1054]=>108.05),[21]=>Array([1056]=>42.83[1055]=>51.36[1054]=>108.53));两个键([x]和[y])都指向我数据库中的ID,因此它们需要保持完整。[x]的顺序无关紧要,但我需要按[y]的值对每个数组进行排序。编辑:我试过这个循环,但它似乎不起作用:foreach($distanc

PHP 如何先按键然后按值对关联数组进行排序?

$arr=array(28=>23,26=>23,15=>12,29=>12,1=>12,16=>15,30=>15,11=>12,8=>23,33=>23);如何排序:8=>2326=>2328=>2333=>2316=>1530=>151=>1211=>1215=>1229=>12 最佳答案 使用uksort,但使数组可用于比较函数以按值进行二次比较。将其设为全局变量将是最快且最肮脏的方式。 关于PHP如何先按键然后按值对关联数组进行排序?,我们在StackOverflow上找到一个