PHP 通过值在多维数组中搜索

PHP 通过值在多维数组中搜索

在这个部分中,我们将学习如何使用值来搜索多维数组。我们将使用PHP来完成这个任务。如果我们不了解PHP中的多维数组,这个示例将非常有用。在下面的示例中,我们将使用值来搜索多维数组的键。如果我们想从一个多维数组中获取值,我们可以通过在数组中搜索键值来轻松实现这一点。

在我们的示例中,我们将使用一个简单的数组来解释这个示例。我们将使用两个数组$students$studentsAddress。在我们的$students数组中,我们使用了一个foreach循环。在我们的$studentsAddress数组中,我们也想显示地址。但是我们面临一个问题,因为我们的示例中有一个包含一些记录和第一个数组id的user_id键。为了解决这个问题,我们将使用array_column()函数和array_column函数。

在多维数组中搜索值的简单代码如下所示:

array_search(value['id'], array_column(studentsAddress, 'user_id'))

搜索多维数组中的值的完整示例如下:

示例:

<?php

    students = [
        [
            "id" => "1",
            "name" => "John",
            "email" => "john@abc.com"
        ],
        [
            "id" => "2",
            "name" => "Harry",
            "email" => "harry@xyz.com"
        ],
        [
            "id" => "3",
            "name" => "Scarlet",
            "email" => "scarlet@abc.com"
        ],
        [
            "id" => "4",
            "name" => "Jennifer",
            "email" => "jennifer@xyz.com"
        ]
    ];studentsAddress = [
        [
            "user_id" => "3",
            "address" => "Saket, Delhi, India"
        ],
        [
            "user_id" => "1",
            "address" => "Akshardham, Delhi, India"
        ]
    ];
?>    

<h1> Multidimensional Array Search By Value Using PHP </h1>
<table border="1" width="700">
    <tr>
        <td>ID</td>
        <td>Name</td>
        <td>Email</td>
        <td>Address</td>
    </tr>

    <?php foreach (students askey => value): ?>
    <tr>
        <td><?php echovalue['id'] ?></td>
        <td><?php echo value['name'] ?></td>
        <td><?php echovalue['email'] ?></td>
        <td>
        <?php 
            key = array_search(value['id'], array_column(studentsAddress, 'user_id'));

            if (!empty(key) || key === 0) {
                echostudentsAddress[$key]['address'];
            }
        ?>
        </td>
    </tr>
    <?php endforeach ?>
</table>

现在我们的上面的代码已经准备好了,我们可以运行它。当我们运行它时,将会生成以下输出:

PHP 通过值在多维数组中搜索

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程