ホームページ >バックエンド開発 >PHPチュートリアル >in_array() 関数の 3 番目のパラメータの問題
class Included{}class test{ public $arr = array(); function a(Included $include){ if (in_array($include, $this->arr, true)){ return; } $this->arr[] = $include; }}$test = new test();$test->a(new Included());$test->a(new Included());$test->a(new Included());print_r($test->arr); // 输出Array ( [0] => Included Object ( ) [1] => Included Object ( ) [2] => Included Object ( ) )
はい、はい、この型にはオブジェクト インスタンスも含まれます
はい、ありがとうございます。
3 番目のステップは、それらが同じタイプであるかどうかを確認することです。
例:
<?php$a = 123;$arr = array('123','456');var_dump(in_array($a, $arr)); // truevar_dump(in_array($a, $arr, true)); // false?>
上の方ありがとうございますが、同じ型にオブジェクトインスタンスが含まれるかどうかについては、この PHP マニュアルには記載がありません。
これはマニュアルに記載されています
3 番目のパラメータ strict の値が TRUE の場合、in_array() 関数は針の種類が干し草の山のものと同じかどうかもチェックします。
そのタイプはリンクです。クリックすると
になります。これについては詳しく説明する必要はありませんね。
さらに、実際の測定結果にはオブジェクトも含まれます