Не уверен, если я правильно понял ваш вопрос, но если вы хотите, чтобы удалить дубликаты из колонки «на трассе», вы можете сделать это с помощью метода array_unique
.
$data = array(
'time' => array('10.28','10.32','10.40','10.43','11.06'),
'To' => array('gf','dd','ss','ww','zz'),
'on-track' => array(4,7,5,4,7)
);
$data['on-track'] = array_unique($data['on-track']);
Увидев редактирование на ваш вопрос, кажется, вы хотите, чтобы только одни значения в массиве отображались один раз. В этом случае, вы можете использовать код ниже:
<?php
$data = array(
'time' => array('10.28','10.32','10.40','10.43','11.06'),
'To' => array('gf','dd','ss','ww','zz'),
'on-track' => array(4,7,5,4,7)
);
$data['on-track'] = get_values_with_count_one($data['on-track']);
echo '<pre>';
var_dump($data['on-track']); //returns array(5);
echo '</pre>';
function get_values_with_count_one($input) {
$count = array_count_values($input);
$returnArray = array();
foreach($count as $key=>$value) {
if ($value === 1)
$returnArray[] = $key;
}
return $returnArray;
}
Далее, вместо повторяющихся значений, вы можете хранить специальное значение как -1. Таким образом, ваш последний массив будет array(-1,-1,5,-1,-1)
. При выводе не выводить -1s. Таким образом, вы можете сохранить расположение 5.
Было бы весьма признателен, если бы вы форматировать этот бит: указать, что является частью строкового значения в массив, а что нет, то, как выглядит геярхия ... [edit] Я думаю, что вижу это сейчас, мне понадобилось пару минут. – Malovich
Итак, вы хотите удалить значения столбца, но не строки с этими значениями? – Anton
Да только значения столбцов, а не строки. – Jeniffer