-4

都市を含む配列があり、それらすべての都市の配列を返したいのですが、それは都市の一意のリストでなければなりません。

以下の配列:

Array
(
    [0] => Array
        (
            [eventname] => Wine Tasting
            [date] => 12/20/2013
            [time] => 17:00:00
            [location] => Anaheim Convention Center
            [description] => This is a test description
            [city] => Anaheim
            [state] => California
        )

    [1] => Array
        (
            [eventname] => Circus
            [date] => 12/22/2013
            [time] => 18:30:00
            [location] => LAX
            [description] => Description for LAX event
            [city] => Anaheim
            [state] => California
        )

    [2] => Array
        (
            [eventname] => Blues Fest
            [date] => 3/14/2014
            [time] => 17:00:00
            [location] => Austin Times Center
            [description] => Blues concert
            [city] => Austin
            [state] => Texas
        )

)

返す必要があります:

array('Anaheim', 'Austin');

どんな助けでも大歓迎です。

4

3 に答える 3

2

array_mapすべての都市を取得してarray_uniqueから、重複を削除するために使用します。

$cities = array_unique(array_map(function($x) { return $x['city']; }, $array));
于 2013-11-11T21:52:37.603 に答える
1

それらをキーとして追加して、強制的に一意にしてから反転するか、次のようにすることができます。

foreach($events as $details) {
    $cities[] = $details['city'];
}
$cities = array_unique($cities);
于 2013-11-11T21:50:18.973 に答える
0
foreach ($array as $val) {
  $cities[$val['city']] = '';
}
$cities = array_keys($cities);
于 2013-11-11T21:51:12.493 に答える