3v4l.org

run code in 300+ PHP versions simultaneously
<?php $data = array( 'ua' => array( 'family', 'major' ), 'os' => array( 'family', 'major' ) ); $result = new StdClass(); $result->ua = new StdClass(); $result->ua->family = "Safari"; $result->ua->major = "6"; $result->ua->minor = "0"; $result->ua->patch = "2"; $result->os = new StdClass(); $result->os->family = "Mac OS X"; $result->os->major = "10"; $result->os->minor = "7"; $result->os->patch = "5"; $result->os->patchMinor = "[null]"; $result->os->funct = function (){ return 'qsdf'; }; $ret = array(); foreach ( $data as $object => $values ) { $ret[$object] = array_intersect_key( (array) $result->$object, array_flip( $values ) ); } var_dump($ret);

preferences:
39.25 ms | 402 KiB | 5 Q