PHPの配列の要素数を取得する関数count()の使い方

PHPの配列の要素数を取得する方法についてです。

僕は最初Javaから入ってPHPを勉強しました。

基本的な構文などは似たようなものですが、ちょこちょこ違うんですよね。

Javaでは配列のオブジェクトのlengthプロパティを参照する形でしたが、PHPではcountという関数を使います。

PHPの配列の要素数を取得する関数count()の使い方

PHPの配列の要素数を取得するには count() を使います。

使い方は簡単で引数に配列を渡すだけです。

これで int 型の要素数が返ってきます。

 

実際にやってみましょう。

出力結果は以下のようになります。

要素数が取得できましたね!

ちなみに配列が空だったら 0 が取得できます。

連想配列の場合はどうなる?

この count() は、連想配列の場合も同じです。

これを出力すると、

となります。

 

連想配列もキーの持ち方がちょっと違うだけで配列は配列ですからね。

でも多次元配列だったらどうなるの?

多次元配列の場合どうなるの?

多次元配列というのは、配列の中の要素が配列になっているものです。

2次元配列を作ってcountを出力してみました。

出力結果は次のようになりました。

親って言うんかな?1次元目?

とにかく外側の配列の要素数だけを返してくれるようです。

 

もし仮に全ての要素の数を取得したい場合は次のようにcount()の第二引数に COUNT_RECURSIVE をセットします。参考:php.net

これで1次元目と2次元目全ての要素数の合計を出してくれます。

出力結果は以下のようになります。

町名の数は7個だから 7 と思った人もいるかもしれません。

japan と usa の要素もあるのでそれを足して9ということですね。

まとめ

PHPで配列の要素数を取得するにはcount()を使います。

多次元配列で全ての要素数を取得する場合には第二引数に COUNT_RECURSIVE をセットします。

DBアクセス時など、PHPで配列を扱う場面はかなり多いです。

要素数を取得する場面も多くなると思うのでうまく活用してください。

コロナの影響でみんな大変だから俺もなんかできること

僕は福井県に住んでいるのですが、戦時中に福井大空襲にあい、その直後に大震災にあってボロボロになった話をおばあちゃんに聞きました。

それでも復活することができ、不死鳥の町と言われるようになりました。

先人達には心から感謝し尊敬します。

リーマンショック、東日本大震災、コロナと数十年に一度と言われる被害が立て続けに起きていますが、僕たちは強いです。

今は苦しいかもしれませんがきっと復活できます。

僕は低学歴ですし小さな小さな粒でしかないですが、プログラミングに関しては必死に勉強し15年以上ごはんにありつけています。

プログラミングを勉強している人の役に立てるほどのスキルはあると思っています。

なので1人でもんもんと悩んでいる若手のエンジニア向けに質問を受け付けることにします。

自宅で待機されている間もパソコンとインターネットがあればプログラミングの勉強はできます。

  • PHP
  • SQL
  • HTML・CSS
  • jQuery

とは言ってもいきなり答えを聞いていたのではなかなか成長できないと思うのです。

なので質問の際には次のことをご連携ください。

  • 何をやりたいか
  • どんなことを調べたか、検索キーワードと参考にしたページのURL
  • 調べた結果どこが分からないか
  • できるなら試したコード

メッセージいはとりあえずTwitterにでもください。

質問はこちら

すぐに返事できないかもしれませんがご了承ください。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA