#php
#php
Вопрос:
Я бы хотел, чтобы приведенный ниже код отображал только один раз каждый элемент $row[2] (без дубликатов) :
foreach($rows as $row){
echo " {$row[2]} ";
}
Как я могу этого добиться? Спасибо.
Мой массив очень большой, но вот пример из var_dump
[0]=>
array(10) {
[0]=> string(2) "39"
["id"]=> string(2) "39"
[1]=> string(3) "abc"
["A"]=> string(3) "abc"
[2]=> string(2) "123"
["B"]=> string(2) "123"
[3]=> string(1) "0"
["C"]=> string(1) "0"
[4]=> string(1) "1"
["D"]=> string(1) "1"
}
Меня интересует только [2]=> string(2) "123"
.
Комментарии:
1. Правильно опишите, что вы хотите, и предоставьте var_dump $rows .
2. Пожалуйста
$rows
, сначала покажите массив. Попробуйтеprint_r($rows)
3. добавлен вывод var_dump
4. Вы можете получить
2
столбец из всех подмассивов сarray_column()
помощью after, после чего просто используйтеarray_unique()
его, чтобы получить уникальные значения.5. И что теперь отображает этот код?
Ответ №1:
Вот код, который вы можете использовать:
$uniqueArr = array();
foreach ($rows as $row) {
if(!(in_array($row[2], $uniqueArr))) {
echo $row[2];
$uniqueArr[] = $row[2];
}
}