Не используйте такие ключи. Приведите массив к виду
$data = [
[
'name' => 'Москва и Московская обл.',
'items' => ['Москва', 'Абрамцево']
],
[
'name' => 'Санкт-Петербург',
'items' => ['Санкт-Петербург', 'Александровская']
]
];
Не претендую на гугу php, но вот:
spoilerclass Location
{
private $data;
/**
* Location constructor.
*
* @param array $data
*/
function __construct($data = [])
{
$this->data = $data;
}
/**
* Get cities by region
*
* @param string $region
*
* @return array
*/
public function getCitiesByRegion($region)
{
$key = array_search($region, array_column($this->data, 'region'));
if ( $key === false ) return false;
return $this->data[$key]['items'];
}
}
$data = [
[
'region' => 'Москва и Московская обл.',
'items' => ['Москва', 'Абрамцево']
],
[
'region' => 'Санкт-Петербург',
'items' => ['Санкт-Петербург', 'Александровская']
]
];
$location = new Location($data);
print_r($location->getCitiesByRegion('Санкт-Петербург'));