| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > PHP: Общие вопросы > Массив: из двумерного в одномерный |
| Автор: Sunvas 18.8.2007, 01:02 |
| Есть двумерный массив. Как из двумерного массива сделать одномерный и удалить все повторяющиеся элементы? |
| Автор: sTa1kEr 18.8.2007, 01:15 | ||
|
| Автор: Sunvas 18.8.2007, 11:45 |
| Call to undefined function: array_walk_recursive() |
| Автор: Mal Hack 18.8.2007, 12:00 |
| А я бы сделал в цикле: if(is_array($arr[$i])) array_merge($arr,$arr[$i]); unset $arr[$i] Чтобы не было зацикливания можно попробовать while, что наверное лучше или делать новый массив. |
| Автор: sTa1kEr 18.8.2007, 12:45 | ||
Да, это в 5ом PHP. Для четвертого можно искусственную рекурсию сделать.
Понимаю, что global - это плохо, но в 4ом PHP проблематично без него будет реализовать. |
| Автор: WolfON 18.8.2007, 13:08 |
| sTa1kEr, да, глобал это ужасно, особенно когда можно обойтись static |
| Автор: sTa1kEr 18.8.2007, 13:25 | ||
В 4ом PHP? |
| Автор: WolfON 18.8.2007, 13:28 | ||
А разве нет?
http://ru2.php.net/static |
| Автор: sTa1kEr 18.8.2007, 14:12 |
| WolfON, да, действительно. Хоть это и противоречит всякой логике статических переменных. |
| Автор: Oliver.voron 15.12.2009, 16:23 |
| имеется многомерный массив Array ( [0] => Array ( [optionID] => 32 [value] => Array ( [0] => 487 [1] => 669 ) ) [1] => Array ( [optionID] => 7 [value] => Array ( [0] => 1 [1] => 2 ) ) ) как из него перебрать 4 возможные комбинации массивов вида Array ( [0] => Array ( [optionID] => 32 [value] => Array ( [0] => 487 ) ) [1] => Array ( [optionID] => 7 [value] => Array ( [0] => 1 ) ) ) Array ( [0] => Array ( [optionID] => 32 [value] => Array ( [0] => 487 ) ) [1] => Array ( [optionID] => 7 [value] => Array ( [1] => 2 ) ) ) итд? забыл. интересует универсальное решение для случаев когда в массиве может быть более двух элементов. |
| Автор: bars80080 15.12.2009, 18:08 |
| Oliver.voron, вам не кажется, что это не ваша тема, чтоб в ней задавать вопрос? создайте новую |