インデックス配列の昇順ソート
CoddyのPHPジャーニー「論理とフロー」セクションの一部 — レッスン 20/68。
データを論理的な順序で整理する必要がある場合、PHPの sort() 関数は、添字配列を昇順に並べ替える簡単な方法を提供します。数値と文字列のどちらを扱っている場合でも、この関数は要素を最小から最大へ、またはアルファベット順にAからZへと自動的にソートします。
数値の基本的な配列で sort() がどのように動作するかを以下に示します:
<?php
$numbers = [45, 12, 78, 23, 56];
sort($numbers);
print_r($numbers);
// 出力: Array ( [0] => 12 [1] => 23 [2] => 45 [3] => 56 [4] => 78 )
?>sort()の重要な特徴は、新しくソートされたコピーを作成するのではなく、元の配列を直接変更することです。これは、sort()を呼び出した後、元の配列が新しい順序を反映するように永続的に変更されることを意味します。
この関数は文字列に対しても同様に機能し、それらをアルファベット順にソートします。これにより、sort()は名前のリストの整理、在庫項目の整理、またはユーザーフレンドリーな形式で表示するためのデータ準備に特に役立ちます。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
チャレンジ
簡単あなたは1つの入力を受け取ります:JSON形式のテストスコアの配列です。入力を読み取り、JSON文字列を配列に変換し、sort()を使用してスコアを昇順に並べ替え、print_r()を使用してソートされた配列を出力してください。
入力形式:数値のJSON配列を含む1行(例:[78,92,65,88,71])
期待される出力:print_r()を使用して表示された、昇順にソートされた配列
チートシート
sort() 関数は、添字配列を昇順(数値の場合は小さい順、文字列の場合はAからZの順)にソートします:
<?php
$numbers = [45, 12, 78, 23, 56];
sort($numbers);
print_r($numbers);
// 出力: Array ( [0] => 12 [1] => 23 [2] => 45 [3] => 56 [4] => 78 )
?>重要: sort() は、新しいソート済みのコピーを作成するのではなく、元の配列を直接変更します。
自分で試してみよう
<?php
// 入力を読み込む
$input = trim(fgets(STDIN));
// JSON文字列を配列に変換する
$scores = json_decode($input, true);
// TODO: 配列をソートするために、以下にコードを記述してください
// ソートされた配列を出力する
print_r($scores);
?>このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。