ΠΡΠΈΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ preserve_keys Π±ΡΠ» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² PHP 4.0.3.
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 4, PHP 5
shuffle
ΠΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°Π½ΠΈΠ΅ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΌΠ°ΡΡΠΈΠ²Π°.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
void shuffle(array arr)
Π€ΡΠ½ΠΊΡΠΈΡ shuffle() "ΠΏΠ΅ΡΠ΅ΠΌΠ΅ΡΠΈΠ²Π°Π΅Ρ" ΡΠΏΠΈΡΠΎΠΊ, ΠΏΠ΅ΡΠ΅Π΄Π°Π½Π½ΡΠΉ Π΅ΠΉ ΠΏΠ΅ΡΠ²ΡΠΌ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠΌ arr, ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ»ΠΈΡΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ. ΠΡΠΈ ΡΡΠΎΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡΡΡ ΡΠ°ΠΌ ΠΌΠ°ΡΡΠΈΠ² ΠΈ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠ΅ ΠΌΠ°ΡΡΠΈΠ²Ρ Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡΡΡ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ shuffle():
<?php
$numbers = range(1, 20);
srand((float)microtime() * 1000000);
shuffle($numbers);
while (list(, $number) = each($numbers)) {
echo "$number ";
}
?>
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΠ°ΡΠΈΠ½Π°Ρ Ρ PHP 4.2.0, Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΠΈ ΠΈΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΎΡ ΡΠ»ΡΡΠ°ΠΉΠ½ΡΡ ΡΠΈΡΠ΅Π» ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ srand() ΠΈΠ»ΠΈ mt_srand(), ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ΅ΠΏΠ΅ΡΡ ΡΡΠΎ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ.
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3 = 3.0.8, PHP 4, PHP 5
sort
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
bool sort(array arr [, int sort_flags])
Π€ΡΠ½ΠΊΡΠΈΡ sort() ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½Π° Π΄Π»Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ² Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ.
ΠΠ°ΠΌΠ΅ΡΠ°Π½ΠΈΠ΅: ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅Ρ ΠΊΠ»ΡΡΠΈ Ρ ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½Π½ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. Π’.Π΅. Π»ΡΠ±ΠΎΠΉ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² Π²ΠΎΡΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅ΡΡΡ ΡΡΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ ΠΊΠ°ΠΊ ΡΠΏΠΈΡΠΎΠΊ. ΠΠΎΡΠ»Π΅ ΡΠΏΠΎΡΡΠ΄ΠΎΡΠΈΠ²Π°Π½ΠΈΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅ΡΡΡ Π² 0,1,2,..., Π° Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π½ΡΠΆΠ½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΠΏΠ΅ΡΠ΅ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΡΡΡΡ. ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΠΌ, ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ°ΠΌΠΈ ΠΊΠ»ΡΡ=Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½Π΅ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ, Π±ΠΎΠ»Π΅Π΅ ΡΠΎΠ³ΠΎ - ΠΊΠ»ΡΡΠΈ ΠΏΡΠΎΡΡΠΎ ΠΏΡΠΎΠΏΠ°Π΄Π°ΡΡ, ΠΏΠΎΡΡΠΎΠΌΡ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΡΡΠΎ-Π»ΠΈΠ±ΠΎ, ΠΎΡΠ»ΠΈΡΠ½ΠΎΠ΅ ΠΎΡ ΡΠΏΠΈΡΠΊΠ°, Π²ΡΡΠ΄ Π»ΠΈ ΡΠ΅Π»Π΅ΡΠΎΠΎΠ±ΡΠ°Π·Π½ΠΎ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ sort():
<?php
$fruits = array("lemon", "orange", "banana", "apple");
sort($fruits);
reset($fruits);
while (list($key, $val) = each($fruits)) {
echo "fruits[" . $key . "] = " . $val . "n";
}
?>
ΠΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ:
fruits[0] = applefruits[1] = bananafruits[2] = lemonfruits[3] = orange
ΠΡΠ³ΡΠΌΠ΅Π½Ρ sort_flags Π·Π°Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π°Π³ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ:
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3, PHP 4, PHP 5
rsort
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
bool rsort ( array array [, int sort_flags])
Π€ΡΠ½ΠΊΡΠΈΡ rsort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² array Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ ΡΠ±ΡΠ²Π°Π½ΠΈΡ (ΠΎΡ Π²ΡΡΡΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΠΊ Π½ΠΈΠ·ΡΠΈΠΌ).
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ TRUE Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ, ΠΈ FALSE Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ rsort():
<?php
$fruits = array("lemon", "orange", "banana", "apple");
rsort($fruits);
reset($fruits);
while (list($key, $val) = each($fruits)) {
echo "$key = $valn";
}
?>
ΠΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ:
0 = orange1 = lemon2 = banana3 = apple
ΠΡΠ³ΡΠΌΠ΅Π½Ρ sort_flags Π·Π°Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π°Π³ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ:
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3, PHP 4, PHP 5
asort
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
bool asort(array arr [, int sort_flags])
Π€ΡΠ½ΠΊΡΠΈΡ asort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ², ΡΠΊΠ°Π·Π°Π½Π½ΡΠΉ Π² Π΅Π΅ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅, ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π΅Π³ΠΎ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΠ»ΠΈ Π² Π°Π»ΡΠ°Π²ΠΈΡΠ½ΠΎΠΌ (Π΅ΡΠ»ΠΈ ΡΡΠΎ ΡΡΡΠΎΠΊΠΈ) ΠΈΠ»ΠΈ Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΠ΅ΠΌ (Π΄Π»Ρ ΡΠΈΡΠ΅Π») ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠΎΡ ΡΠ°Π½ΡΡΡΡΡ ΡΠ²ΡΠ·ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΠΊΠ»ΡΡΠ°ΠΌΠΈ ΠΈ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΌΠΈ ΠΈΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΡΠΌΠΈ, Ρ.Π΅. Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠ°ΡΡ ΠΊΠ»ΡΡ=Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠΎΡΡΠΎ "Π²ΡΠΏΠ»ΡΠ²Π°ΡΡ" Π½Π°Π²Π΅ΡΡ , Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ - Π½Π°ΠΎΠ±ΠΎΡΠΎΡ, "ΠΎΠΏΡΡΠΊΠ°ΡΡΡΡ".
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ, ΠΈ false Π² ΡΠ»ΡΡΠ°Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ asort():
<?php
$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");
asort($fruits);
reset($fruits);
while (list($key, $val) = each($fruits)) {
echo "$key = $valn";
}
?>
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
c = appleb = bananad = lemona = orange
ΠΠ°ΡΡΠΈΠ² $fruits Π±ΡΠ» ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½ Π² Π²ΠΎΠ·ΡΠ°ΡΡΠ°ΡΡΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ»ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ.
ΠΠ΅ΡΠΎΠ΄ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° sort_flags.
ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (ΠΊΠ°ΠΊ ΡΡΡΠΎΠΊΠΈ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΠΈΡΠ»Π°). ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π±ΡΠ» Π²Π²Π΅Π΄Π΅Π½ Π² PHP Π½Π°ΡΠΈΠ½Π°Ρ Ρ 4 Π²Π΅ΡΡΠΈΠΈ.
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3, PHP 4, PHP 5
arsort
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
bool arsort(array arr [, int sort_flags])
Π€ΡΠ½ΠΊΡΠΈΡ arsort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² arr ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΡ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠΉ.
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π³Π»Π°Π²Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠ°ΠΌ, Π³Π΄Π΅ ΡΡΡΠ΅ΡΡΠ²Π΅Π½Π΅Π½ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π² ΠΌΠ°ΡΡΠΈΠ²Π΅.
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ, ΠΈ false Π² ΡΠ»ΡΡΠ°Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΎΡΠΈΠ±ΠΊΠΈ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ arsort():
$arr=array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");
arsort($arr);
reset($arr);
while(list ($key, $val) = each ($arr)) {
echo "$key = $val<BR>l";
}
ΠΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ:
a = oranged = lemonb = bananac = apple
ΠΠ°ΡΡΠΈΠ² $arr Π±ΡΠ» ΠΎΡΡΠΎΡΡΠΈΡΠΎΠ²Π°Π½ Π² ΡΠ±ΡΠ²Π°ΡΡΠ΅ΠΌ ΡΠΈΠΌΠ²ΠΎΠ»ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅, ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π±ΡΠ»ΠΈ ΡΠΎΡ ΡΠ°Π½Π΅Π½Ρ.
ΠΠ΅ΡΠΎΠ΄ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ° sort_flags.
ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ, ΠΊΠ°ΠΊ ΡΡΠ°Π²Π½ΠΈΠ²Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ (ΠΊΠ°ΠΊ ΡΡΡΠΎΠΊΠΈ ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΠΈΡΠ»Π°). ΠΠ½ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:
ΠΡΠΎΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ Π±ΡΠ» Π²Π²Π΅Π΄Π΅Π½ Π² PHP Π½Π°ΡΠΈΠ½Π°Ρ Ρ 4 Π²Π΅ΡΡΠΈΠΈ.
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3, PHP 4, PHP 5
ksort
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
bool ksort(array arr [, int sort_flags])
Π€ΡΠ½ΠΊΡΠΈΡ ksort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² Π² ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Π²ΠΎΠ·ΡΠ°ΡΡΠ°Π½ΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ Π²Π·Π°ΠΈΠΌΠΎΡΠ²ΡΠ·Π΅ΠΉ ΠΊΠ»ΡΡΠ΅ΠΉ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΏΡΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ΅ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠΈΡ true, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ ΠΏΡΠΎΡΠ»ΠΎ ΡΡΠΏΠ΅ΡΠ½ΠΎ, ΠΈ false Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ ksort():
<?php
$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");
ksort($fruits);
reset($fruits);
while (list($key, $val) = each($fruits)) {
echo "$key = $valn";
}
?>
ΠΠ°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ:
a = orangeb = bananac = appled = lemon
ΠΡΠ³ΡΠΌΠ΅Π½Ρ sort_flags Π·Π°Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π°Π³ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ:
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3, PHP 4, PHP 5
krsort
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΌΠ°ΡΡΠΈΠ²Π° ΠΏΠΎ ΡΠ±ΡΠ²Π°Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠΎΠ².
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
bool krsort(array arr [, int sort_flags])
Π€ΡΠ½ΠΊΡΠΈΡ krsort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΊΠ»ΡΡΠΈ Π² ΠΌΠ°ΡΡΠΈΠ²Π΅ arr Π² ΠΎΠ±ΡΠ°ΡΠ½ΠΎΠΌ ΠΏΠΎΡΡΠ΄ΠΊΠ΅. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ²ΡΠ·ΠΊΠ° ΠΊΠ»ΡΡΠ΅ΠΉ ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠΎΡ ΡΠ°Π½ΡΠ΅ΡΡΡ. ΠΡΠ° ΡΡΠ½ΠΊΡΠΈ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΏΡΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ΅ Π°ΡΡΠΎΡΠΈΠ°ΡΠΈΠ²Π½ΡΡ ΠΌΠ°ΡΡΠΈΠ²ΠΎΠ².
Π€ΡΠ½ΠΊΡΠΈΡ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ true Π² ΡΠ»ΡΡΠ°Π΅ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ, ΠΈ false Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ krsort():
<?php
$fruits = array("d"=>"lemon", "a"=>"orange", "b"=>"banana", "c"=>"apple");
krsort($fruits);
reset($fruits);
while (list($key, $val) = each($fruits)) {
echo "$key = $valn";
}
?>
ΠΠ°Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ:
d = lemonc = appleb = bananaa = orange
ΠΡΠ³ΡΠΌΠ΅Π½Ρ sort_flags Π·Π°Π΄Π°Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΠ»Π°Π³ΠΈ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ:
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 3 = 3.0.13, PHP 4, PHP 5
natsort
ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ "Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ" ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ ΠΌΠ°ΡΡΠΈΠ²Π°.
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
void natsort(array arr)
Π€ΡΠ½ΠΊΡΠΈΡ natsort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² arr Π² Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌ Π΄Π»Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΡ Π°ΡΡΠΈΡΠΈΠ°ΡΠΈΠΉ.
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ natsort():
<?php
$array1 = $array2 = array("img12.png", "img10.png", "img2.png", "img1.png");
sort($array1);
echo "Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°n";
print_r($array1);
natsort($array2);
echo "nΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°n";
print_r($array2);
?>
ΠΡΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°Array( [0] => img1.png [1] => img10.png [2] => img12.png [3] => img2.png)ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°Array( [3] => img1.png [2] => img2.png [1] => img10.png [0] => img12.png)
Π€ΡΠ½ΠΊΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ PHP 4, PHP 5
natcasesort
ΠΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΡ ΠΌΠ°ΡΡΠΈΠ²Π° Π±Π΅Π· ΡΡΠ΅ΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ° ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ:
void natcasesort(array arr)
Π€ΡΠ½ΠΊΡΠΈΡ natcasesort() ΡΠΎΡΡΠΈΡΡΠ΅Ρ ΠΌΠ°ΡΡΠΈΠ² arr Π² Π΅ΡΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌ Π΄Π»Ρ ΡΠ΅Π»ΠΎΠ²Π΅ΠΊΠ° ΠΏΠΎΡΡΠ΄ΠΊΠ΅ Ρ ΡΠΎΡ ΡΠ°Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ½Π΄Π΅ΠΊΡΠ½ΡΡ Π°ΡΡΠΈΡΠΈΠ°ΡΠΈΠΉ.
ΠΡΠ° ΡΡΠ½ΠΊΡΠΈΡ ΡΡ ΠΎΠΆΠ° Ρ natsort(), ΡΠΎΠ»ΡΠΊΠΎ Π½Π΅ ΡΡΠΈΡΡΠ²Π°Π΅Ρ ΡΠ΅Π³ΠΈΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ².
ΠΡΠΈΠΌΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ natcasesort():
<?php
$array1 = $array2 = array("IMG0.png", "img12.png", "img10.png",
"img2.png", "img1.png", "IMG3.png");
sort($array1);
echo "Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°n";
print_r($array1);
natcasesort($array2);
echo "nΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° (Π±Π΅Π· ΡΡΠ΅ΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ°)n";
print_r($array2);
?>
ΠΡΠΈΠ²Π΅Π΄Π΅Π½Π½ΡΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π΅:
Π‘ΡΠ°Π½Π΄Π°ΡΡΠ½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°Array( [0] => IMG0.png [1] => IMG3.png [2] => img1.png [3] => img10.png [4] => img12.png [5] => img2.png)ΠΡΡΠ΅ΡΡΠ²Π΅Π½Π½Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° (Π±Π΅Π· ΡΡΠ΅ΡΠ° ΡΠ΅Π³ΠΈΡΡΡΠ°)Array( [0] => IMG0.png [4] => img1.png [3] => img2.png [5] => IMG3.png [2] => img10.png [1] => img12.png)