我试图合并两个数组,省略重复的值,并使用Slim框架将其作为
JSON返回.我做了以下代码,但结果我得到了JSON的唯一属性作为对象 – 而不是数组.我不知道为什么会这样,我想避免它.我该怎么做?
我的代码:
$galleries = array_map(function($element){return $element->path;}, $galleries);
$folders = array_filter(glob('../galleries/*'), 'is_dir');
function transformElems($elem){
return substr($elem,3);
}
$folders = array_map("transformElems", $folders);
$merged = array_merge($galleries,$folders);
$unique = array_unique($merged);
$response = array(
'folders' => $dirs,
'galleries' => $galleries,
'merged' => $merged,
'unique' => $unique);
echo json_encode($response);
作为JSON响应,我得到:
{
folders: [] //array
galleries: [] //array
merged: [] //array
unique: {} //object but should be an array
}
似乎array_unique返回了一些奇怪的东西,但是原因是什么?