|
|
|
| Подскажите возможно есть более красивое и лаконичное решение вопроса. Суть в чем, есть массив который содержит рад значений, нужно выбрать из него только повторяющиеся значения, строго по одному значению и создать из них новый массив. Ключи нового массива должны идти строго по порядку, от - 0 (нуля). Написал решение, но оно кривое и громоздкое...
На входе примерно такой массив - array(0 => 15, 23, 45, 23, 18, 86, 15, 18);
На выходе должен быть такой - array(0 => 15, 23, 18);
<?php
$tree_arr = array(15, 23, 45, 23, 18, 86, 15, 18);
foreach($tree_arr as $key => $val){
if(count(array_keys($tree_arr,$val)) > 1){ $new_tree[] = $val; }
}
$new_tree = array_unique($new_tree);
foreach($new_tree as $key => $val){
if(!empty($val)){ $new_trs[] = $val; }
}
print_r($new_trs); // array(0 => 15, 23, 18);
?>
|
| |
|
|