PHPの「指定した配列要素数ごとに分割する方法」についてざっくり解説します。
詳細はPHPマニュアルを確認してください。
サンプルコード上に出てくるvar_dumpの使い方はこちらの記事を参考にしてください!
https://akeoblog.com/vardump/目次
1. in_array関数
書き方
in_array(①, ②)
- 探したい値
- 検索対象の配列
2. 使い方
サンプルコード(文字列のチェック)
<?php
$fruits = ["apple", "banana", "orange"];
//配列内に"apple"という値が入っているかチェック
$result = in_array("apple", $fruits);
var_dump($result);
このコードの実行結果はこちら
bool(true)
bool型で「true」と出力されました!
つまり、、、
『$fruitsという配列には「apple」という文字が入っている』
ということになります!
ここから先、ちょっとだけ重要です!!
お次は「数字の値が入った配列の場合」を確認していきましょう!!!
サンプルコード(数字のチェック)
<?php
$numbers = [1, 2, 3, 4];
//文字列の「3」をチェックする
$mojiCheck = in_array("3", $numbers);
//数字の「3」をチェックする
$numCheck = in_array(3, $numbers);
var_dump($mojiCheck);
var_dump($numCheck);
このコードの実行結果はこちら
//文字列の「3」をチェックした結果
bool(true)
//数字の「3」をチェックした結果
bool(true)
ん??
って思いませんか??
文字列の「3」も数字の「3」もtrueの判定になってしまいましたね。
このままの書き方だと、データ型まではチェックしないということです!!
データ型、、、って何??
と思った方はこちらをチェックしてください^^
https://akeoblog.com/model/ということで、どうすれば良いのか。
結論から言うと、第3引数にtrueを記述すればOKです!!
詳細は下記のコードを確認してください!!
サンプルコード(データ型までチェックする方法)
<?php
$numbers = [1, 2, 3, 4];
//文字列の「3」をチェックする
$mojiCheck = in_array("3", $numbers, true);
//数字の「3」をチェックする
$numCheck = in_array(3, $numbers, true);
var_dump($mojiCheck);
var_dump($numCheck);
このコードの実行結果はこちら
//文字列の「3」をチェックした結果
bool(false)
//数字の「3」をチェックした結果
bool(true)
文字列の「3」をチェックした場合は「false」になりましたね!!