[配列の操作あれこれ(ソート、ランダム並べ替え)]

---------------------------実行結果-----------------------
◆asort()配列を値で正順ソート(キーを保持する)$array7
ソート後の配列確認$array7[12]=A
ソート後の配列確認$array7[10]=B
ソート後の配列確認$array7[8]=C
ソート後の配列確認$array7[6]=D
ソート後の配列確認$array7[4]=E
ソート後の配列確認$array7[2]=F
ソート後の配列確認$array7[1]=G
ソート後の配列確認$array7[0]=H
◆sort()配列を値で正順ソート(キーを保持しない)$array7
ソート後の配列確認$array7[0]=A
ソート後の配列確認$array7[1]=B
ソート後の配列確認$array7[2]=C
ソート後の配列確認$array7[3]=D
ソート後の配列確認$array7[4]=E
ソート後の配列確認$array7[5]=F
ソート後の配列確認$array7[6]=G
ソート後の配列確認$array7[7]=H
◆arsort()配列を値で逆順ソート(キーを保持する)$array1
ソート後の配列確認$array1[0]=れい
ソート後の配列確認$array1[2]=ふたつ
ソート後の配列確認$array1[8]=はち
ソート後の配列確認$array1[7]=ななつ
ソート後の配列確認$array1[3]=さん
ソート後の配列確認$array1[5]=いつつ
◆rsort()配列を値で逆順ソート(キーを保持しない)$array1
ソート後の配列確認$array1[0]=れい
ソート後の配列確認$array1[1]=ふたつ
ソート後の配列確認$array1[2]=はち
ソート後の配列確認$array1[3]=ななつ
ソート後の配列確認$array1[4]=さん
ソート後の配列確認$array1[5]=いつつ
◆ksort()配列をキーで正順ソート$array8
ソート後の配列確認$array8[5]=F
ソート後の配列確認$array8[7]=H
ソート後の配列確認$array8[8]=C
ソート後の配列確認$array8[10]=B
ソート後の配列確認$array8[11]=G
ソート後の配列確認$array8[16]=D
ソート後の配列確認$array8[20]=A
ソート後の配列確認$array8[31]=E
◆krsort()配列をキーで逆順ソート$array8
ソート後の配列確認$array8[31]=E
ソート後の配列確認$array8[20]=A
ソート後の配列確認$array8[16]=D
ソート後の配列確認$array8[11]=G
ソート後の配列確認$array8[10]=B
ソート後の配列確認$array8[8]=C
ソート後の配列確認$array8[7]=H
ソート後の配列確認$array8[5]=F
◆natsort()配列を人が予期した順でソート(natcasesort()は文字の大小を無視)$array5
ソート後の配列確認$array5[0]=5fujiko
ソート後の配列確認$array5[7]=6kazuyo
ソート後の配列確認$array5[2]=8setuko
ソート後の配列確認$array5[6]=9yuka
ソート後の配列確認$array5[1]=10ayano
ソート後の配列確認$array5[4]=21fujiko
ソート後の配列確認$array5[5]=30kazuyo
ソート後の配列確認$array5[3]=41kazu
ソート後の配列確認$array5[8]=52ayano
◆asort()上記を通常ソートとの比較$array5
ソート後の配列確認$array5[1]=10ayano
ソート後の配列確認$array5[4]=21fujiko
ソート後の配列確認$array5[5]=30kazuyo
ソート後の配列確認$array5[3]=41kazu
ソート後の配列確認$array5[8]=52ayano
ソート後の配列確認$array5[0]=5fujiko
ソート後の配列確認$array5[7]=6kazuyo
ソート後の配列確認$array5[2]=8setuko
ソート後の配列確認$array5[6]=9yuka

---------------------------スクリプト---------------------
$array1 = array(0=>'れい',2=>'ふたつ',3=>'さん',5=>'いつつ',7=>'ななつ',8=>'はち'); // テスト用配列
$array5 = array('5fujiko','10ayano','8setuko','41kazu','21fujiko','30kazuyo','9yuka','6kazuyo','52ayano'); // テスト用配列
$array7 = array(0=>'H',1=>'G',2=>'F',4=>'E',6=>'D',8=>'C',10=>'B',12=>'A'); // テスト用配列
$array8 = array(7=>'H',11=>'G',5=>'F',31=>'E',16=>'D',8=>'C',10=>'B',20=>'A'); // テスト用配列
echo '◆asort()配列を値で正順ソート(キーを保持する)$array7';
asort($array7);
foreach($array7 as $key0 => $value0){
echo 'ソート後の配列確認$array7['.$key0.']='.$value0.'';
}
echo '◆sort()配列を値で正順ソート(キーを保持しない)$array7';
sort($array7);
foreach($array7 as $key1 => $value1){
echo 'ソート後の配列確認$array7['.$key1.']='.$value1.'';
}
echo '◆arsort()配列を値で逆順ソート(キーを保持する)$array1';
arsort($array1);
foreach($array1 as $key2 => $value2){
echo 'ソート後の配列確認$array1['.$key2.']='.$value2.'';
}
echo '◆rsort()配列を値で逆順ソート(キーを保持しない)$array1';
rsort($array1);
foreach($array1 as $key3 => $value3){
echo 'ソート後の配列確認$array1['.$key3.']='.$value3.'';
}
echo '◆ksort()配列をキーで正順ソート$array8
';
ksort($array8);
foreach($array8 as $key4 => $value4){
echo 'ソート後の配列確認$array8['.$key4.']='.$value4.'';
}
echo '◆krsort()配列をキーで逆順ソート$array8
';
krsort($array8);
foreach($array8 as $key5 => $value5){
echo 'ソート後の配列確認$array8['.$key5.']='.$value5.'';
}
echo '◆natsort()配列を人が予期した順でソート(natcasesort()は文字の大小を無視)$array5';
natsort($array5);
foreach($array5 as $key6 => $value6){
echo 'ソート後の配列確認$array5['.$key6.']='.$value6.'';
}
// shuffle($array5); // 配列をランダムに並び替える(キーも狂う)
echo '◆asort()上記を通常ソートとの比較$array5';
asort($array5);
foreach($array5 as $key7 => $value7){
echo 'ソート後の配列確認$array5['.$key7.']='.$value7.'';
}
----------------------------------------------------------