Php 如何按值(DESC、Numeric)对数组排序并保持非数字键的顺序?

Php 如何按值(DESC、Numeric)对数组排序并保持非数字键的顺序?,php,arrays,Php,Arrays,我尝试过很多东西,但都没有成功,我肯定我错过了一些简单的东西 这是我的阵列: $array['Product1'] = 500; $array['Product2'] = 1230; $array['Product3'] = 432; $array['Product4'] = 2000; 这是我想要的结果 $array['Product4'] = 2000; $array['Product2'] = 1230; $array['Product1'] = 500; $array['Product

我尝试过很多东西,但都没有成功,我肯定我错过了一些简单的东西

这是我的阵列:

$array['Product1'] = 500;
$array['Product2'] = 1230;
$array['Product3'] = 432;
$array['Product4'] = 2000;
这是我想要的结果

$array['Product4'] = 2000;
$array['Product2'] = 1230;
$array['Product1'] = 500;
$array['Product3'] = 432;
尝试了natcasesort、array_reverse、asort、rsort,似乎什么都不起作用。我错过了什么


感谢您的帮助

您尝试了很多,但都不是正确的:

arsort($array);

有关更多有关a out
arsort()
的信息,请参阅手册:

您可能需要arsort:

此处比较了数组排序类型:

您还可以将sort_标志传递给arsort-这里有一个列表:(以及上面arsort链接上的一个链接)

您应该以以下方式结束:

$array = arsort($array, SORT_NUMERIC);

您缺少对这些尝试的方法如何失败的描述/
$array = arsort($array, SORT_NUMERIC);