php中怎样在二维数组里查找一维数组是否存在

方法一:利用array里的内置函数【推荐使用

//子数组
$excel_array = array(
    'id' => '1',
    'name' => 'aa'
);

//主数组
$data_array = array(
    0 => array(
        'id' => '1',
        'name' => 'cc'
    ),
    1 => array(
        'id' => '1',
        'name' => 'aa'
    ),
    2 => array(
        'id' => '2',
        'name' => 'bb'
    )
);

if(in_array($excel_array, $data_array) === true)
{
    echo 1;
}
else{
    echo 0;
}

 

 

方法二:在方法一无法使用的情况下,可以利用额外方法处理

//子数组
$excel_array_temp = array(
    'id' => '1',
    'name' => 'aa'
);
$excel_array[] = $excel_array_temp;

//主数组
$data_array = array(
    0 => array(
        'id' => '1',
        'name' => 'cc'
    ),
    1 => array(
        'id' => '1',
        'name' => 'aa'
    ),
    2 => array(
        'id' => '2',
        'name' => 'bb'
    )
);

$excel_str = preg_replace('/^a:(\d){1,}:{(.*)}$/', '$2', serialize($excel_array));
$excel_str = preg_replace('/i:\d{1,};/', '', $excel_str);

$data_str = preg_replace('/^a:(\d){1,}:{(.*)}$/', '$2', serialize($data_array));
$data_str = preg_replace('/i:\d{1,};/', '', $data_str);

if(stripos($data_str, $excel_str) >= 0)
{
    echo 1;
}
else{
    echo 0;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值