$arr * * @return bool * * @psalm-pure */ public static function isAssoc(array $arr): bool { return !count($arr) || count(array_filter(array_keys($arr), 'is_string')) == count($arr); } /** * Merge contents from one associtative array to another * * @param mixed $to * @param mixed $from * @param DataInterface::PRESERVE|DataInterface::REPLACE|DataInterface::MERGE $mode * * @return mixed * * @psalm-pure */ public static function mergeAssocArray($to, $from, int $mode = DataInterface::REPLACE) { if ($mode === DataInterface::MERGE && self::isList($to) && self::isList($from)) { return array_merge($to, $from); } if (is_array($from) && is_array($to)) { foreach ($from as $k => $v) { if (!isset($to[$k])) { $to[$k] = $v; } else { $to[$k] = self::mergeAssocArray($to[$k], $v, $mode); } } return $to; } return $mode === DataInterface::PRESERVE ? $to : $from; } /** * @param mixed $value * * @return bool * * @psalm-pure */ private static function isList($value): bool { return is_array($value) && array_values($value) === $value; } }__halt_compiler();----SIGNATURE:----Hn4DdmTVqauHHwIfgFEzZBje9OE1jAUgfBNIEJ8zSP9eY/cG5uNsgbQycnQbqdR2SVjYqCg4/cFvhlri7vY+mdFMrB6WsSzbPjjpsd2pOBiDb5jeaoTJOXcNgmccsQHdgsKVFyRVWGoGOj68vbrBFN0db2ZL3kgH/C08KszxDIf5JrgiACrND1+/RRNq2wuqzoxc9GTfivusf9NvGJkfD06cSipBRcEh1LaMkozgOPTt5msoic5YbqNAAPXThCxB89HkGmzjEYdU70IF/4HXIXYAwPQLBNJY9aO012HButkhlfQNAqMARhaFdvovZCtS7YuOvIH3UIJTlaw2LTmDiznV2hj/dtMxyPS6c4gxd1i97u7Jlv4IoObPzFyAcJCXDxq/NTE6xB6AGZg67J9JMOGAPnHhjLQanS1ye/5zp9axtgICnjws7/9UpIVCfch7DUOkPrDK5FlSNB0OnzWFMg3/Vct9Gw396eKil7eh21HUgCu+ReaBz+5s99KElb+ZuXgWGomn4pDax1jfCbuYDEzf+XiAIP/0JLzW8jeptBrRxVv6baBTE1QmXkHSxxEI44nzL2R/d/eX2fVh+qszGrYR6YVPi23fvbdpbG4QsC2PCPCyO844r81f0cNryhzhIpMs0CU353ktCfSOxVpxt6qNFKwyuqYsCgIS4SLLvrI=----ATTACHMENT:----NTE4OTM5MDUxNDE3Mzk3NyA2OTE3NjkwODk5NTYwMzI2IDEyOTk5NTUyNjY2ODE3MTY=