Php 如何匹配两个数组中的值?

Php 如何匹配两个数组中的值?,php,arrays,Php,Arrays,使用PHP,如何将订阅者与使用这两个数组的用户进行匹配 $subscribers Array ( [0] => stdClass Object ( [meta_id] => 1 [email] => name@example.com ) ) Array ( [0] => stdClass Object ( [ID] => 1

使用PHP,如何将订阅者与使用这两个数组的用户进行匹配

$subscribers

Array
(
    [0] => stdClass Object
        (
            [meta_id] => 1
            [email] => name@example.com
        )

)
Array
(
    [0] => stdClass Object
        (
            [ID] => 1
            [user_email] => name@example.com
        )

    [1] => stdClass Object
        (
            [ID] => 2
            [user_email] => name2@example.com
        )
$users

Array
(
    [0] => stdClass Object
        (
            [meta_id] => 1
            [email] => name@example.com
        )

)
Array
(
    [0] => stdClass Object
        (
            [ID] => 1
            [user_email] => name@example.com
        )

    [1] => stdClass Object
        (
            [ID] => 2
            [user_email] => name2@example.com
        )
我以为这样就可以了

<?php
foreach ( $users as $user ) {
    if ( in_array( 'name@example.com', $subscribers ) ) {
        echo 'Matched user';
    }
}

我才意识到为什么我的坏了<代码>$subscribers
是一个数组
$users
是一个对象。有什么办法可以让它发挥作用吗?从你粘贴的内容来看,
$users
是一个对象数组,就像
$subscribers
一样。如果不是,则需要修正问题以反映存储在该变量中的实际值。无需担心。事实证明,这只是个案差异的问题<代码>strltlower($user->user\u email)修复了它。谢谢。不要在电子邮件地址上使用
strtolower()
。根据RFC,邮箱名称区分大小写。换句话说,在“test@example.com,“test”区分大小写。(“example.com”不是。)test@example.com“和”Test@example.com“是不同的邮箱。我刚刚意识到为什么我的邮箱不工作<代码>$subscribers是一个数组
$users
是一个对象。有什么办法可以让它发挥作用吗?从你粘贴的内容来看,
$users
是一个对象数组,就像
$subscribers
一样。如果不是,则需要修正问题以反映存储在该变量中的实际值。无需担心。事实证明,这只是个案差异的问题<代码>strltlower($user->user\u email)修复了它。谢谢。不要在电子邮件地址上使用
strtolower()
。根据RFC,邮箱名称区分大小写。换句话说,在“test@example.com,“test”区分大小写。(“example.com”不是。)test@example.com“和”Test@example.com“是不同的邮箱。