【问题标题】:php array_intersect making issues and i'm not able to check the empty arrayphp array_intersect 出现问题,我无法检查空数组
【发布时间】:2014-03-17 08:12:50
【问题描述】:

我有五个数组和一个用户可以随机搜索的搜索。因此,在这五个中,有时可能有两个数组、三个数组或五个数组之类的值。

所以当我相交时,我无法检查哪些是空的,所以它总是返回一个空数组。

$full_ids = array_intersect($g_arr, $c_arr, $k_arr, $m_arr, $p_arr);

实际上我需要检查并使这个动态像$g_arr, $c_arr这样的值,那么上面的操作将应用于这两个......就像

$full_ids = array_intersect($g_arr, $c_arr);

我不明白如何检查?任何帮助将不胜感激..谢谢

【问题讨论】:

  • 可能你必须使用array_diff,而不是array_intersect
  • @hindmost 我需要这些数组的公共值...
  • 创建一个新的空数组;依次测试每个数组,如果它包含值,则推送到新数组;然后使用 call_user_func_array() 以您的新数组作为参数调用 array_intersect()
  • 很难理解你想要什么。您能否提供源数组和所需结果的示例?
  • @MarkBaker 请你在这里写一个示例...

标签: php jquery arrays array-intersect


【解决方案1】:
$tempArray = [];
if (count($g_arr) >0) $tempArray[] = $g_arr;
if (count($c_arr) >0) $tempArray[] = $c_arr;
if (count($k_arr) >0) $tempArray[] = $k_arr;
if (count($m_arr) >0) $tempArray[] = $m_arr;
if (count($p_arr) >0) $tempArray[] = $p_arr;

$intersect = call_user_func_array('array_intersect', $tempArray);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-02-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-25
    • 2019-01-13
    • 1970-01-01
    相关资源
    最近更新 更多