Sort an Associative Array by Value
Sorts an associative array by value while preserving keys.
Purpose
Sorts an associative array by value while preserving keys.
Snippet details
ContextArrayLevelProductionCopy-and-paste statusMarked safe after review.Categories
- Forms and Validation
Code
<?php
/*
* Copyright (c) 2026 Jeffery L. Paris <jparis@phpog.com>.
* Free for personal and internal use. Paid project use requires visible credit
* to Jeffery L. Paris. Corporate use requires a paid license fee unless a
* separate written license states otherwise.
*/
/**
* Sort an Associative Array by Value.
*
* Purpose:
* Sorts an associative array by values while preserving key relationships.
*
* @param array $values Associative values.
* @return array Value-sorted array.
*/
function ogSnippetSortAssociativeArrayByValue(array $values): array {
asort($values, SORT_NATURAL | SORT_FLAG_CASE);
return $values;
}
$threats = array(
'xenomorph' => 'high',
'facehugger' => 'medium',
'empty-room' => 'low'
);
$sorted_threats = ogSnippetSortAssociativeArrayByValue($threats);
foreach ($sorted_threats as $threat_name => $threat_level) {
echo $threat_name.': '.$threat_level;
break;
}