当前位置:  首页>> 技术小册>> PHP合辑3-数组函数

在本文中,我们将学习如何在PHP中使用in_array()函数查找数组中的值,并通过示例来理解其实现。

in_array()函数是PHP中的一个内置函数,用于检查给定的值是否存在于数组中。如果给定的值在给定数组中存在,则返回TRUE,否则返回FALSE。

语法:

bool in_array( val,array_name, $mode )

参数:in_array()函数接受3个参数,其中2个是必需的,另一个是可选的。这三个参数如下所述:

$val:必需参数,指定要在给定数组中搜索的元素或值。该参数可以是混合类型,即可以是字符串类型或整数类型,或其他任何类型。如果该参数是字符串类型,则搜索将在区分大小写的情况下执行。

$array_name:必需参数,指定要在其中搜索的数组。

$mode:可选参数,为布尔类型。该参数指定我们要执行搜索的模式。如果将其设置为TRUE,则in_array()函数将按与指定val参数相同的类型搜索值。该参数的默认值为FALSE。

返回值:in_array()函数返回布尔值,即如果值$val在数组中存在则返回TRUE,否则返回FALSE。

方法:为了在数组中搜索特定值,我们将使用in_array()函数,其中搜索参数为字符串类型,其值为true。否则,如果指定的值不在数组中,则此函数将返回false值。

我们将通过示例来理解PHP中in_array()函数的概念。


示例1:下面的程序使用in_array()函数在非严格模式下执行搜索,即最后一个参数$mode设置为false,这是其默认值。要搜索的值是字符串类型,而该值在数组中是整数类型,但in_array()函数仍然返回true,因为搜索是在非严格模式下进行的。

  1. <?php
  2. $marks = array(100, 65, 70, 87);
  3. if (in_array("100", $marks))
  4. {
  5. echo "found";
  6. }
  7. else
  8. {
  9. echo "not found";
  10. }
  11. ?>

output:

  1. found

示例2:下面的程序使用in_array()函数在严格模式下执行搜索,即最后一个参数$mode设置为true,并且该函数现在还将检查值的类型。

  1. <?php
  2. $name = array("ravi", "ram", "rani", 87);
  3. if (in_array("ravi", $name, TRUE))
  4. {
  5. echo "found \n";
  6. }
  7. else
  8. {
  9. echo "not found \n";
  10. }
  11. if (in_array(87, $name, TRUE))
  12. {
  13. echo "found \n";
  14. }
  15. else
  16. {
  17. echo "not found \n";
  18. }
  19. if (in_array("87", $name, TRUE))
  20. {
  21. echo "found \n";
  22. }
  23. else
  24. {
  25. echo "not found \n";
  26. }
  27. ?>

output:

  1. found
  2. found
  3. not found