PHP array_search 很慢 - 我怎样才能加快速度?

PHP array_search is very slow - how can i speed up?

我有两个数组,一个是 API 调用的响应,我从中获取有关哪些电子邮件地址已上传到 System -> $array_emails_found

的信息

另一个数组是form -> $array_data

上传的数据

在这个用例中,我们需要找出系统中的用户,我们需要标记用户数据。

这是我的代码:

for ($i = 0; $i < $count_emails_found; $i++){
    if ($key = array_search($array_emails_found[$i], array_column($array_data, 'Email'))){
        $key = $key + 1;
        $array_data[$key]["InEloqua"] = $array_data[$key]["InEloqua"] . "Y";
    }
} 

问题是,上传的文件可以包含例如超过 450k 的用户,响应也可以提供这样的数字,并且需要超过 2 小时才能完成。

感谢@Barmar 的评论,现在运行速度更快

$arraycolumn = array_column($array_data, 'Email');

for ($i = 0; $i < $count_emails_found; $i++){
        $key = array_search($array_emails_found[$i], $arraycolumn);
        $key = $key + 1;
        $array_data[$key]["InEloqua"] = $array_data[$key]["InEloqua"] . "Y";
}