本記事では、PHPで配列・連想配列・多次元配列の要素数を取得するcount関数の使い方について解説しています。
PHPの学習におすすめ書籍
独習PHP 第4版
メリット
- PHPの基本構文からクラス・データベース連携・セキュリティまで学べる
- PHPによるWebアプリ開発の基礎・基本テクニックを学べる
ポチップ
先輩くん
Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!
初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!
全プログラマー必見!
変数名/関数名にもう悩まない!
変数名/関数名にもう悩まない!
リーダブルコード
メリット
- 美しいコードが書けるが自然と書けるようになる
- 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
目次
count関数の使い方
count関数の基本的な使い方は以下のとおりです。
count($value [,$mode])
構文解説
- $value:要素数を調べたい配列を指定
- $mode:COUNT_RECURSIVEまたは1を指定することで、再帰的に配列をカウントする(省略可能)
配列の要素数を取得する
count関数を使用して配列の要素数を取得するサンプルコードは以下のとおりです。
<?php
$arr = ['A', 'B', 'C'];
echo '配列の要素数:' . count($arr);
/* 実行結果 *
* 配列の要素数:3
*/
連想配列の要素数を取得する
count関数の第二引数を指定して連想配列の要素数を取得するサンプルコードは以下のとおりです。
<?php
$arr = ['apple' => ['りんご', 'リンゴ'], 'banana' => ['ばなな', 'バナナ'], 'strawberry' => ['いちご', 'イチゴ']];
echo '配列の要素数(COUNT_NORMAL):' . count($arr, COUNT_NORMAL);
echo '配列の要素数(COUNT_RECURSIVE):' . count($arr, COUNT_RECURSIVE);
/* 実行結果 *
* 配列の要素数(COUNT_NORMAL):3
* 配列の要素数(COUNT_RECURSIVE):9
*/
第二引数のCOUNT_NORMALは、省略した時と同じで第一階層のみの要素数カウントしているので3になり、COUNT_RECURSIVEは再帰的に配列をカウントするので、連想配列の要素数全てをカウントし9になります。
多次元配列の要素数を取得する
count関数の第二引数を指定して多次元配列の要素数を取得するサンプルコードは以下のとおりです。
<?php
$arr = ['apple', 'banana', 'strawberry', ['watermelon', 'melon']];
echo '配列の要素数(COUNT_NORMAL):' . count($arr, COUNT_NORMAL);
echo '配列の要素数(COUNT_RECURSIVE):' . count($arr, COUNT_RECURSIVE);
/* 実行結果 *
* 配列の要素数(COUNT_NORMAL):4
* 配列の要素数(COUNT_RECURSIVE):6
*/
連想配列の時と全く同じで、COUNT_NORMALでは第一階層のみ取得するため[‘watermelon’, ‘melon’]の塊は1つとしてカウントされます。COUNT_RECURSIVEでは、再帰的に配列をカウントするので[‘watermelon’, ‘melon’]が2つとしてカウントされます。