dotku
5/22/2016 - 9:30 AM

Use array_map to prevent `Array to string conversion` notice in array_diff

Use array_map to prevent Array to string conversion notice in array_diff

<?php 
$arr1 = array(
            'level1' => array(
                'level2' => array(
                    'level3' => 'hello'
                )
            )
        );
        $arr2 = array('level3'=>'world');
        $needle1 = array('level3'=>'hello');
        $needle2 = array('level3'=>'world');

        var_dump(!array_diff($arr1, $needle1));
        var_dump(!array_diff($arr1, $needle2));

        var_dump(!array_diff(array_map('serialize',$arr1), array_map('serialize',$needle1)));
        var_dump(!array_diff(array_map('serialize',$arr1), array_map('serialize',$needle2)));

        var_dump(!array_diff(array_map('serialize',$arr2), array_map('serialize',$needle1)));
        var_dump(!array_diff(array_map('serialize',$arr2), array_map('serialize',$needle2)));