الدالة uksort()‎‎‎‎‎‎‎‎‎‎‎‎‎‎‎ في PHP

من موسوعة حسوب
< PHP
مراجعة 02:50، 14 أبريل 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (←‏أنظر أيضا)
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

(PHP 4, PHP 5, PHP 7)

تُرتب الدالة ()‎uksort مصفوفة حسب المفاتيح باستخدام دالة مقارنة معرفة من قبل المستخدم.

الوصف

bool uksort ( array &$array , callable $key_compare_func )

تُرتب هذه الدالة مصفوفة حسب المفاتيح باستخدام دالة مقارنة معرفة من قبل المستخدم. ويجب عليك استخدام هذه الدالة إذا كانت المصفوفة التي ترغب في ترتيبها تحتاج إلى الترتيب حسب بعض المعايير غير البسيطة.

ملاحظة: إذا تساوت مقارنة عنصرين، فإن ترتيبهما النسبي في المصفوفة المُرتّبة يكون غير محدد.

المعاملات

array

المصفوفة المُدخلة.

key_compare_func

يجب أن تُعيد دالة المقارنة عدد صحيح أقل من أو يساوي أو أكبر من الصفر إذا كان الوسيط الأول يعتبر أقل من أو يساوي أو أكبر من الوسيط الثاني على التوالي. لاحظ أنه قبل PHP 7.0.0 كان يجب أن يكون هذا العدد الصحيح في النطاق من ‎-2147483648 إلى 2147483647.

int callback ( mixed $a, mixed $b )

القيم المعادة

تُعيد الدالة القيمة TRUE عند نجاح عملها، أو FALSE عند فشل تنفيذها.

أمثلة

المثال 1: مثال على الدالة uksort()‎‎

<?php
function cmp($a, $b)
{
    $a = preg_replace('@^(a|an|the) @', '', $a);
    $b = preg_replace('@^(a|an|the) @', '', $b);
    return strcasecmp($a, $b);
}

$a = array("John" => 1, "the Earth" => 2, "an apple" => 3, "a banana" => 4);

uksort($a, "cmp");

foreach ($a as $key => $value) {
    echo "$key: $value\n";
}
?>

سوف تكون مُخرجات المثال أعلاه كالتالي:

an apple: 3
a banana: 4
the Earth: 2
John: 1

انظر أيضًا

مصادر