Skip to content

Instantly share code, notes, and snippets.

@dotku
Created May 22, 2016 09:30
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save dotku/400b97ac717aa247a3060bdb7c187a9a to your computer and use it in GitHub Desktop.
Save dotku/400b97ac717aa247a3060bdb7c187a9a to your computer and use it in GitHub Desktop.
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)));
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment