PHP не может использовать подстановочные знаки, такие как *
в ключах массива.Какую бы строку вы ни использовали для ссылки на ключ, она попытается найти ключ с этой точной строкой.То, что вы попробовали, не может работать, потому что нет никаких ключей *
.
Вы можете получить это, повторяя все уровни или повторяя внешний уровень и ссылаясь на соответствующий вложенный ключ.Но если вы просто ищете все экземпляры 'title', рекурсивный метод может быть более простым способом их получения.
array_walk_recursive($o, function($value, $key) use (&$titles) {
if ($key == 'title') $result[] = $value;
});
var_dump($titles);
Это позволит получить любое значение 'title' независимо от его глубины вмассив, так что если это не то, что вам нужно, то вам нужно будет выполнить его итерацию и конкретно указать правильные.