Szintaxis:
Az usort () függvény szintaxisa alább látható.
Logikai érték (array $ array, callback ())Ennek a függvénynek két argumentuma van. Mindkét érv kötelező. Az első argumentum a rendezni kívánt tömböt veszi fel. A callback () függvény összehasonlítja a tömb értékeit a tömb rendezéséhez, és numerikus értéket ad vissza. Ha a callback () függvény argumentumai megegyeznek, akkor a függvény 0-t ad vissza. Ha a visszahívás () függvény első argumentuma nagyobb, mint a második argumentum, akkor 1-et ad vissza. Ha a visszahívás () függvény első argumentuma kisebb, mint a második argumentum, -1-et ad vissza. Az usort () függvény true-t ad vissza sikeres rendezés esetén, és false-t eredményez sikertelen rendezés esetén. A funkció egyes felhasználási módjai bemutatásra kerültek az oktatóanyag következő részében.
1. példa: Rendezzen dátumértékek tömbjét
Az alábbi példa bemutatja, hogyan lehet a dátumértékek tömbjét rendezni megfelelően az usort () függvény segítségével. Hozzon létre egy PHP fájlt a következő szkript segítségével. $ date_array öt dátumú értékekkel van meghatározva. sort_date () függvény visszahívási függvényként van deklarálva a $ date_array. A tömbértékeket kinyomtatják, mielőtt meghívnák a usort () függvényt. Ha az usort () függvényt meghívja a tömb és a visszahívás funkcióval, két dátumértéket időbélyeg értékekké alakít át az strtotime () függvény segítségével. Ha a két időbélyeg értéke egyenlő, akkor a függvény 0-t ad vissza. Ha az első időbélyeg értéke nagyobb, mint a második időbélyeg értéke, akkor a függvény értéke 1 lesz. Ha az első időbélyeg értéke alacsonyabb, mint a második időbélyeg értéke, akkor a függvény -1-et ad vissza. A usort () függvény többször is meghívja a visszahívási függvényt a $ date_array rendezve van. Ezután a rendezett tömböt kinyomtatja a a mindegyikre hurok.
// Határozza meg a visszahívási funkciótfüggvény sort_date ($ a, $ b)
visszatér strtotime ($ a) - strtotime ($ b);
// Deklarálja a dátumértékek tömbjét
$ date_array = tömb ('25 -03-2020 ', '14 -03-2020', '28 -02-2015 ', '09 -12-2017', '20 -09-2015 ');
// Rendezés előtt nyomtassa ki a tömb értékeit
visszhang "
A dátumtömb értéke:
";foreach ($ date_array mint $ érték)
echo $ érték."
";
// A tömb rendezése az usort () használatával
usort ($ date_array, "sort_date");
// Rendezés után kinyomtatja a tömböt
visszhang "
A kimenet a dátum tömb rendezése után:
";foreach ($ date_array mint $ érték)
echo $ érték."
";
?>
Kimenet:
A következő kimenet jelenik meg, miután a parancsfájlt futtatta a szerverről.
2. példa: Rendezzen asszociatív tömböt
A következő példa bemutatja, hogy az asszociatív tömb miként rendezhető az usort () függvény segítségével. Hozzon létre egy PHP fájlt a következő szkript segítségével. sort_names () függvény visszahívási függvénynek minősül, hogy a tömböt a tömbértékek alapján rendezze. A háromszintű operátort a sort_names () függvény az asszociatív tömb értékeinek összehasonlítására. Ha a két érték egyenlő, akkor a visszahívási funkció 0-t ad vissza. Ha az első argumentum értéke nagyobb, mint a második argumentum értéke, akkor a visszahívási függvény értéke 1 lesz. Ha az első argumentum értéke kisebb, mint a második argumentum értéke, akkor a visszahívási függvény -1-et ad vissza. Az usort () a visszahívás funkcióval rendezi a tömböt, és a rendezett tömböt a a mindegyikre hurok.
// Adja meg a függvényt az asszociatív tömb rendezéséhezfüggvény sort_nevek ($ a, $ b)
return $ a == $ b ? 0: $ a> $ b ? 1: -1;
// Definiálja az asszociatív tömböt
$ persons = array ("1001" => "Meera Ali", "1002" => "Kabir Hossain", "1003" => "Nurjahan Akter");
// Rendezze a tömböt
usort ($ személyek, "sort_names");
// A rendezett tömb kinyomtatása
visszhang "A rendezett tömb értékei:
";
foreach ($ személy mint $ személy)
echo $ személy. "
";
?>
Kimenet:
A következő kimenet jelenik meg, miután a parancsfájlt futtatta a szerverről.
3. példa: Rendezzen kétdimenziós tömböt
A következő példa bemutatja, hogyan rendezhető kétdimenziós tömb az usort () függvény segítségével. Hozzon létre egy PHP fájlt a következő szkript segítségével. sort_array () függvény visszahívási függvénynek minősül, hogy a tömböt a tömbértékek alapján rendezze. Az strcmp () függvényt a visszahívási függvényben használják a tömb értékeinek összehasonlítására. Ha a két érték egyenlő, akkor az strcmp () függvény értéke 0 lesz. Ha az első argumentum értéke nagyobb, mint a második argumentum értéke, akkor az strcmp () függvény értéke 1 lesz. Ha az első argumentum értéke kisebb, mint a második argumentum értéke, akkor az strcmp () függvény -1-et ad vissza. Az usort () a visszahívás funkció segítségével rendezi a tömböt, és a rendezett tömb szerkezete a print_r () funkció.
// Funkció meghatározása a kétdimenziós tömb rendezéséhezfüggvény sort_array ($ a, $ b)
return strcmp ($ a ['a'], $ b ['a']);
// Nyújtsa be a kétdimenziós tömböt
$ animals = tömb (tömb ("a" => "Oroszlán"), tömb ("a" => "Szarvas"), tömb ("a" => "Nyúl"), tömb ("a" => "Majom "));
// Rendezze a tömböt
usort ($ állatok, "sort_array");
// A rendezett tömb kinyomtatása
visszhang "A tömb értékei az usort () után:
";";
print_r ($ állatok);
visszhang "
?>
Kimenet:
A következő kimenet jelenik meg, miután a parancsfájlt futtatta a szerverről.
Következtetés:
Az usort () hasznos funkció olyan adattípusok rendezéséhez, amelyek nem képesek rendezni a PHP normál rendezési funkcióit. A usort () függvény visszahívási függvényét a rendezéshez szükséges értékek típusa határozza meg. Ez az oktatóanyag segít az olvasóknak abban, hogy miként használják a usort () függvényt, és a követelmény alapján alkalmazzák a szkriptjükben.