随手写了个 PHP 交集比较,性能比 array_intersect 略强,返回 Bool

直接上代码呗:

if (!function_exists('array_intersect_compare')) {

    /**
     * @param array $left_array
     * @param array $right_array
     *
     * @return bool
     */
    function array_intersect_compare(array $left_array, array $right_array): bool {
        if (count($right_array) > count($left_array)) {
            $tmpArr = $left_array;
            $left_array = $right_array;
            $right_array = $tmpArr;
        }

        $left_array = array_flip($left_array);

        foreach ($right_array as $right) {
            if (isset($left_array[$right])) {
                return true;
            }
        }
        return false;
    }
}
发布了188 篇原创文章 · 获赞 198 · 访问量 211万+

猜你喜欢

转载自blog.csdn.net/maxsky/article/details/103614754
今日推荐