• HOME > 
  • PHP > 
  • PHPで配列の最小値や最大値を取得する【minとmax】

PHPで配列の最小値や最大値を取得する【minとmax】

投稿日:

このページにはGoogleアドセンス広告とアフィリエイト広告が含まれています。

カテゴリー記事のアイキャッチ画像
広告
広告

配列の最小値や最大値を取得できるminとmax

PHPのmin関数とmax関数はそれぞれ配列の最小値と最大値を取得できる関数です。

次のように引数に対象の配列を指定します。

min関数max関数の書き方

(※実際には配列だけでなく、引数に直接数値入れても最小値最大値を取得することができます。)

min関数とmax関数それぞれの例は以下の通りです。

min関数で最小値を取得する

下の例では、min関数を用いることにより最小値である15が取得されます。

PHP

$arr = [24,35,32,21,15,49];
$min = min($arr);
var_dump($min);//結果は15

値が文字列でも比較でき、その場合は「a < z < A < Z < あ < ん < ア < ン < 漢字」という順になります。

PHP

$arr = ['tokyo','さいたま','神奈川','chiba','イバラキ','tochigi','gunma'];
$min = min($arr);
var_dump($min);//結果はchiba

max関数で最小値を取得する

下の例では、max関数を用いることにより最大値である49が取得されます。

PHP

$arr = [24,35,32,21,15,49];
$max = max($arr);
var_dump($max);//結果は49

max関数においてもmin関数と同様に値が文字列でも最大値を取得可能です。

PHP

$arr = ['tokyo','さいたま','神奈川','chiba','イバラキ','tochigi','gunma'];
$max = max($arr);
var_dump($max);//結果は神奈川

連想配列に対してmin関数とmax関数を使った場合

下の例のような連想配列に対してmin関数max関数を用いると、値を比較して最小値最大値を返します。数値と文字列が混在している場合は「a < z < A < Z < あ < ん < ア < ン < 漢字」という順序になります。

PHP

$arr = ['id' => 29, 'name' => '東京', 'furigana' => 'トウキョウ', 'code' => 'tokyo'];
echo "最小値は、「" . min($arr) . "」です。";//29
echo "最大値は、「" . max($arr) . "」です。";//東京

多次元連想配列から特定のカラムの最小値最大値を取得する

下の例のような多次元連想配列の特定のカラムから最小値最大値を取得したい場合は、array_column関数と組み合わせて処理します。

array_column関数を使うと多次元連想配列から特定のカラムの値のみを抽出して新しい配列を生成することができます。

こうして用意した新しい配列に対してmin関数max関数を用いて最小値最大値を取り出します。

array_column関数について詳しくはこちらの記事をご覧ください。

PHP

$arr = [
    ['id' => 1, 'name' => '東京太郎', 'age' =>'24', 'furigana' => 'トウキョウタロウ'],
    ['id' => 2, 'name' => '埼玉次郎', 'age' =>'35', 'furigana' => 'サイタマジロウ'],
    ['id' => 3, 'name' => '千葉花子', 'age' =>'21', 'furigana' => 'チバハナコ'],
    ['id' => 4, 'name' => '神奈川一郎', 'age' =>'48', 'furigana' => 'カナガワイチロウ'],
    ['id' => 5, 'name' => '茨城春子', 'age' =>'48', 'furigana' => 'イバラキハルコ'],
    ['id' => 6, 'name' => '栃木三郎', 'age' =>'48', 'furigana' => 'トチギサブロウ'],
];
$target_column = array_column($arr,'age');
echo "最小値は、「" . min($target_column) . "」です。";
echo "最大値は、「" . max($target_column) . "」です。";

9行目array_columnを使って「age(年齢)」の値のみを抽出した新しい配列($target_column)を生成しています。

10行目11行目$target_columnに対してmin関数max関数で最小値最大値を取り出します。

まとめ

以上が、PHPのmin関数とmax関数を使って配列の最小値や最大値を取得する方法です。

広告
広告

関連する記事

サムネイル

PHPで配列内を検索してインデックス番号を取得する【arra……

2024年07月03日
array_searchは、配列内から特定の値を検索し、見つかった場合はその値のキー(インデックス番号)を返す関数です。該当する値が複数ある場合は、はじめに見つかったインデックス番号を返します。
サムネイル

PHPで配列内に値が存在するか判定する【in_array】

2024年07月02日
PHPのin_arrayは、配列内に特定の値が存在するかを判定して、結果をtrueかfalseで返してくれる関数です。第一引数に「調べたい値」、第二引数に「対象の配列」を指定して判定を行います。
サムネイル

PHPで配列から特定の値を持つキーを全て取得する【array……

2024年07月02日
HPのarray_keys関数は対象の配列からすべてのキー、もしくは特定の値を持つキーを取得して新しい配列として返してくれる関数です。基本的には引数に配列と検索する値をセットして使用します。
サムネイル

PHPで多次元配列の並び替え(ソート)を行う【array_m……

2024年06月13日
PHPで配列のソートを行う方法は他にもありますが、array_multisort関数を使えば、とても簡潔なコードで多次元配列を任意の条件・順序で並び替えを行うことができます。
サムネイル

PHPで多次元配列から特定のカラムの値を取得する【array……

2024年05月29日
PHPのarray_columnは多次元配列の中から指定したカラムの値のみを抽出することができる関数です。抽出した値は新しい配列に格納されて返ってきます。
サムネイル

XAMPPでSSLを有効にする方法【httpsでアクセスでき……

2024年04月12日
XAMPPをSSL化してhttpsでアクセスできるようにするには、設定ファイルの変更と証明書の作成が必要です。