【Amazon】人気の商品が日替わりで登場!
毎日お得なタイムセール!商品をみる

【PHP】配列に特定の値が存在するか確認する方法

本記事では、PHPで配列に特定の値が存在するか確認する方法について解説しています。

PHPの学習におすすめ書籍
独習PHP 第4版
総合評価
( 5 )
メリット
  • PHPの基本構文からクラス・データベース連携・セキュリティまで学べる
  • PHPによるWebアプリ開発の基礎・基本テクニックを学べる
楽天ブックス
¥3,740 (2024/05/21 10:58時点 | 楽天市場調べ)
先輩くん

Amazon Kindle Unlimitedに登録すると、月額980円で読み放題だからオススメだよ!

後輩ちゃん

初回30日間は無料だから、まだ登録したことのない人はぜひ試してみてね!

全プログラマー必見!
変数名/関数名にもう悩まない!
リーダブルコード
総合評価
( 5 )
メリット
  • 美しいコードが書けるが自然と書けるようになる
  • 他の開発者が理解しやすいコードになる
著:Dustin Boswell, 著:Trevor Foucher, 解説:須藤 功平, 翻訳:角 征典
¥2,640 (2023/07/23 02:48時点 | Amazon調べ)
目次

in_array関数の使い方

配列に特定の値が存在するか確認したい時は、in_array関数を使用します。基本的な使い方は以下のとおりです。

$result = in_array($needle, $haystack [, $strict = false]);
構文解説
  • $result:検索したい値を見つけた場合はtrueを返し、見つけられなかった場合はfalseを返す。
  • $needle:検索したい値を指定
  • $haystack:対象の配列を指定
  • $strict:等価演算子(==)で比較する場合はfalseを指定し、厳密等価演算子(===)で比較する場合はtrueを指定します。デフォルト値はfalse。(省略可能)

in_array関数を使用したサンプルコードを用意したので、動作確認してみましょう。

<?php
$animalArr = ['dog', 'cat', 'cow', 'bird', 'rabbit', '1'];

var_dump(in_array('cat', $animalArr)); // bool(true)
var_dump(in_array(1, $animalArr)); // bool(true)
var_dump(in_array(1, $animalArr, true)); // bool(false)

1つ目のin_array関数は、第一引数の検索したい文字列に「cat」を指定しています。対象の配列に代入されている値を確認すると2つ目に「cat」があるのでtrueを返しています。

2つ目と3つ目のin_array関数は、第一引数の検索したい文字列に「1」を指定しています。ここまでは同じですが、3つ目のin_array関数には第三引数にtrueを指定しています。この指定をすることで値の比較を等価演算子ではなく厳密等価演算子で行うため文字列の「’1’」と数値の「1」は別の値と判断されfalseを返しています。

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

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次