Home  >  Article  >  Backend Development  >  Whether a php two-dimensional array contains a field

Whether a php two-dimensional array contains a field

王林
王林Original
2023-05-24 12:39:37551browse

In PHP programming, arrays are a very common data type, and two-dimensional arrays are even more common. What should we do when we need to search for a specific field in a two-dimensional array? This article will share how to determine whether a PHP two-dimensional array contains a certain field.

1. What is a php two-dimensional array?

In php, arrays can save multiple values. If the values ​​in an array are themselves an array, then the array is called a two-dimensional array. For example:

$fruits = array(
    array("apple", "red"),
    array("banana", "yellow"),
    array("grape", "purple"),
);

In the above code, $fruits is a two-dimensional array containing three arrays, each array containing two values.

2. Methods to determine whether a two-dimensional array contains a certain field

There are many ways to determine whether a PHP two-dimensional array contains a certain field. Here are two common methods: Method:

1. Use the in_array() function

function check_array($arr, $key, $value){
    foreach($arr as $item){
        if(in_array($value, $item) && in_array($key, $item)){
            return true;
        }
    }
    return false;
}

Use the in_array() function to traverse the two-dimensional array. If the two-dimensional array contains $key and $value, return true, otherwise return false. It should be noted that this method can only determine the position of the value in the array, not the key name.

Usage method:

$people = array(
    array("name" => "Tom", "age" => 18),
    array("name" => "Lily", "age" => 20),
    array("name" => "Lucy", "age" => 22),
);

if(check_array($people, "name", "Tom")){
    echo "包含Tom的人员信息";
}else{
    echo "不包含Tom的人员信息";
}

2. Use foreach() loop

function check_array($arr, $key, $value){
    foreach ($arr as $k => $v) {
        if ($v["$key"] == $value) {
            return true;
        }
    }
    return false;
}

Use foreach() loop to traverse the two-dimensional array and determine whether there is a $ in the two-dimensional array. key is the key name and the value is the array element of $value. If it exists, return true, otherwise return false.

Usage:

$people = array(
    array("name" => "Tom", "age" => 18),
    array("name" => "Lily", "age" => 20),
    array("name" => "Lucy", "age" => 22),
);

if(check_array($people, "name", "Tom")){
    echo "包含Tom的人员信息";
}else{
    echo "不包含Tom的人员信息";
}

3. Summary

In PHP programming, two-dimensional array is a common data type. When you need to determine whether a two-dimensional array contains a certain field, you can use the in_array() function or foreach() loop to determine. The appropriate method needs to be chosen based on specific business needs.

The above is the detailed content of Whether a php two-dimensional array contains a field. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn