PHP में uasort() फ़ंक्शन एक सरणी को उपयोगकर्ता-परिभाषित तुलना फ़ंक्शन के आधार पर सॉर्ट करता है और की-मान संबंध (index association) को बनाए रखता है। यह सहयोगी सरणियों (associative arrays) के लिए उपयोगी है जहाँ कीज महत्वपूर्ण हों।
सिंटैक्स (Syntax)
uasort(array &$arr, callable $callback): bool
पैरामीटर्स (Parameters)
$arr − सॉर्ट की जाने वाली सरणी (रेफरेंस द्वारा पास की जाती है)।
$callback − तुलना फ़ंक्शन (usort के समान व्यवहार)।
रिटर्न वैल्यू (Return Value)
सफलता पर true, विफलता पर false लौटाता है।
usort() और uasort() में अंतर
| फ़ंक्शन | कीज बनाए रखता है? | उपयोग |
|---|---|---|
| usort() | नहीं (रीइंडेक्स करता है) | सूचकांकित सरणियाँ |
| uasort() | हाँ | सहयोगी सरणियाँ |
उदाहरण (Examples)
उदाहरण 1: सहयोगी सरणी को मानों के आधार पर सॉर्ट करना
<?php
function compare($a, $b) {
if ($a == $b) return 0;
return ($a < $b) ? -1 : 1;
}
$marks = array("a" => 30, "b" => 12, "c" => 75);
uasort($marks, "compare");
foreach ($marks as $key => $value) {
echo "Key = $key, Value = $value
";
}
?>
आउटपुट
Key = b, Value = 12 Key = a, Value = 30 Key = c, Value = 75
उदाहरण 2: अवरोही क्रम में सॉर्ट (स्पेसशिप ऑपरेटर)
<?php
$products = array(
"laptop" => 55000,
"mouse" => 800,
"monitor" => 12000,
"keyboard" => 2500
);
uasort($products, fn($a, $b) => $b <=> $a);
foreach ($products as $item => $price) {
echo "$item: ₹$price
";
}
?>
आउटपुट
laptop: ₹55000 monitor: ₹12000 keyboard: ₹2500 mouse: ₹800