flk*_*lks 0 php arrays search multidimensional-array
我有一个像这样的数组:
printr_($photos);
======
Array
(
[0] => Array
(
[path] => site:photos/photo-1.jpg
[data] => Array
(
[PhotoTitle] => Mega title
[PhotoDate] => 2015
[FlickrURL] => xxx
[Portrait] =>
[slug] => mega-title
)
)
[1] => Array
(
[path] => site:photos/photo-2.jpg
[data] => Array
(
[PhotoTitle] => Photo title
[PhotoDate] => 2001
[FlickrURL] => xxx
[Portrait] =>
[slug] => photo-title
)
)
...
Run Code Online (Sandbox Code Playgroud)
我想从一个字符串中获取数组索引(这是我浏览器当前URL中的子标签)。
尝试了该解决方案,但出现错误(第95行上的未定义索引:数据[…])
/*
** Search in array
*/
function arraySearch($array, $field, $search){
foreach($array as $key => $value){
if ($value[$field] === $search)
return $key;
}
return false;
}
// Line 95
$photo_index = $photos[arraySearch($photos["data"], "slug", "mega-title")];
Run Code Online (Sandbox Code Playgroud)
PHP> = 5.5可以正常工作:
$key = array_search('mega-title', array_column(array_column($photos, 'data'), $slug));
$photo_index = $photos[$key];
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4002 次 |
最近记录: |