2015-12-15 31 views
0

我怎麼能使用array_unique功能,此陣 `array_unique在PHP與陣列子陣

$mon = array('9:00AM - 11:00AM','1:00pm-6pm'); 
$tue = array('8:00AM - 11:00AM','12:00pm-6pm'); 
$wed = array('9:00AM - 11:00AM','1:00pm-6pm'); 
$thu = array('9:00AM - 11:00AM','1:00pm-6pm'); 
$fri = array('9:00AM - 12:00PM','1:00pm-6pm'); 
$sat = array('9:00AM - 7:00PM'); 
$sun = array('9:00AM - 12:00AM','1:00pm-6pm'); 

$a=array($mon , $tue , $wed , $thu , $fri , $sat , $sun); 
print_r(array_unique($a)); 
+0

[RTFM(http://php.net/manual/de/ function.array-unique.php) – Lino

+0

@Lino連接到德語版本的手冊和詛咒「閱讀$#@ $ @#$手冊」的諷刺讓我感到有趣。 – Ultimater

+0

@Ultimater哦,我總是忘記這個愚蠢的男人頁是地理位置:-) – Lino

回答

1

您可以使用此解決方案還:

$schedule = array(
    array('9:00AM - 11:00AM','1:00pm-6pm'), 
    array('8:00AM - 11:00AM','12:00pm-6pm'), 
    array('9:00AM - 11:00AM','1:00pm-6pm'), 
    array('9:00AM - 11:00AM','1:00pm-6pm'), 
    array('9:00AM - 12:00PM','1:00pm-6pm'), 
    array('9:00AM - 7:00PM'), 
    array('9:00AM - 12:00AM','1:00pm-6pm'), 
); 

$schedule = array_map(function ($item) { 
    return json_encode($item); 
}, $schedule); 

// use array_flip to switch keys and values. By doing it the duplicates will be removed  
$json = '[' . implode(',', array_keys(array_flip($schedule))) . ']'; 
$schedule = json_decode($json); 

var_dump($schedule); 
1

你必須編寫自定義函數的多維數組, 請參考下面的功能

function unique_multidim_array($array, $key){ 
$temp_array = array(); 
$i = 0; 
$key_array = array(); 

foreach($array as $val){ 
    if(!in_array($val[$key],$key_array)){ 
     $key_array[$i] = $val[$key]; 
     $temp_array[$i] = $val; 
    } 
    $i++; 
} 
return $temp_array; } 

現在,從您的代碼中的任何地方撥打此功能

$details = unique_multidim_array($details,'id'); 

如果你的情況下,你必須通過鍵0或1像

$a=unique_multidim_array($a,0);