php in_arrayで配列に指定した値が含まれているか判定する
phpで、in_arrayを使用して配列に指定した値が含まれているか判定するサンプルコードを記述してます。phpのバージョンは8.0です。
環境
- OS CentOS Linux release 8.0.1905 (Core)
- php 8.0.0
- nginx 1.14.1
in_array使い方
in_arrayを使用すれば、配列に指定した値が含まれているか判定することが可能です。
in_array(値, 配列)
// あればtrue
以下は、配列に指定した値が含まれているか判定するサンプルコードとなります。
<?php
$arr = [1, 2, 3, 4, 5];
if(in_array(3, $arr)){
echo "ある";
}else{
echo "ない";
}
// ある
if(in_array(6, $arr)){
echo "ある";
}else{
echo "ない";
}
// ない
ただし、数字の「3.0」や文字列の「3 , 3.0」もtrueと判定されてしまいます。
※ifではなく三項演算子で記述してます。
<?php
$arr = [1, 2, 3, 4, 5];
in_array(3, $arr) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ある
in_array(6, $arr) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ない
in_array(3.0, $arr) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ある
in_array("3", $arr) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ある
in_array("3.0", $arr) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ある
数字の「3.0」や文字列の「3 , 3.0」を「false」にしたい場合は、第3引数に「true」を使用します。
<?php
$arr = [1, 2, 3, 4, 5];
in_array(3, $arr, true) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ある
in_array(6, $arr, true) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ない
in_array(3.0, $arr, true) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ない
in_array("3", $arr, true) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ない
in_array("3.0", $arr, true) ? print "ある" . PHP_EOL : print "ない" . PHP_EOL;
// ない
-
前の記事
javascript 文字列を\nを使用せずに改行する 2020.12.13
-
次の記事
docker composeを使って「hbase」を構築するまでの手順 2020.12.13
コメントを書く