PHP

【PHP】配列・連想配列・多次元配列の要素数を取得するcount関数の使い方

本記事では、PHPで配列・連想配列・多次元配列の要素数を取得するcount関数の使い方について解説しています。

PHPの学習におすすめ参考書
気づけばプロ並みPHP 改訂版–ゼロから作れる人になる!

本書情報
出版社リックテレコム
著者谷藤 賢一
発売日2017/3/6
ページ数331ページ
レビュー
(Amazon)
(168件)
先輩くん
先輩くん
Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!
後輩ちゃん
後輩ちゃん
初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!

綺麗なコードが書けるようになる!
リーダブルコード-より良いコードを書くためのシンプルで実践的なテクニック

本書情報
出版社オライリージャパン
著者Dustin Boswell / Trevor Foucher
発売日2012/6/23
ページ数260ページ
レビュー
(Amazon)
(620件)
先輩くん
先輩くん
より良いコードを書きたい人におすすめの本だよ!
後輩ちゃん
後輩ちゃん
10以上前の書籍ですが、内容は今でも役に立つものばかりです!

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つとしてカウントされます。

ブログランキング・にほんブログ村へ PVアクセスランキング にほんブログ村