Форум успешных вебмастеров - GoFuckBiz.com

  Форум успешных вебмастеров - GoFuckBiz.com > Бизнес-решения > Скрипты, программы и технические решения
Дата
USD/RUB62.2850
BTC/USD0.0000
Скрипты, программы и технические решения Обсуждаем скрипты, программы и новые технологии.

Закрытая тема
Опции темы Опции просмотра
Старый 29.07.2013, 02:38   #1
malishka
Member
 
Аватар для malishka
 
Регистрация: 28.11.2009
Сообщений: 557
Бабло: $216355
По умолчанию Разбить подмассивы на вложенные подмассивы, по уникальной части значения [PHP]

Есть массив.

Там есть подмассив.

Значения типа 1 - 1111-мамба
2 - 1111-карамба
3 - 2222
4 - 2222-харамба

Надо как-то разбить, по этим уникальным первым цифрам. Т.е до тире, или цифра до ничего.

Что нужно в результате,

Знать кол-во "групп" и уникальную цифру, к примеру

1111 - 2шт.
2222 - 2шт.
...
4444 - 8 шт.

Помогите, что-то запутался...
+ результат должен обязательно идти по порядку как и значения шли.
__________________
И пусть судьба несправедлива - вся жизнь игра, играй красиво
malishka вне форума  
Старый 29.07.2013, 02:48   #2
Strikelol
Senior Member
 
Регистрация: 31.03.2011
Сообщений: 3,062
Бабло: $633545
По умолчанию

три минуты перечитывал, ничего не понял. В результате поржал над задачей
Формулируй нормально, не мучай программистов
Strikelol вне форума  
Старый 29.07.2013, 02:50   #3
Sox
Senior Member
 
Аватар для Sox
 
Регистрация: 12.03.2013
Сообщений: 140
Бабло: $29805
По умолчанию

береш масив и кадый элемен ишеш в нем потом счиатеш сколько элементов в новом масиве , насчет сортировки делаш уникальный масив из своего и присвиваеш к нему поститаное опять через поиск
Sox на форуме  
Старый 29.07.2013, 02:59   #4
malishka
Member
 
Аватар для malishka
 
Регистрация: 28.11.2009
Сообщений: 557
Бабло: $216355
ТС -->
автор темы ТС По умолчанию

Sox, А поточнее ? код бы накидал примерный
__________________
И пусть судьба несправедлива - вся жизнь игра, играй красиво
malishka вне форума  
Старый 29.07.2013, 04:04   #5
Shawn
Senior Member
 
Аватар для Shawn
 
Регистрация: 02.12.2007
Сообщений: 325
Бабло: $84545
По умолчанию

Что за говно?
Shawn вне форума  
Старый 29.07.2013, 16:48   #6
malishka
Member
 
Аватар для malishka
 
Регистрация: 28.11.2009
Сообщений: 557
Бабло: $216355
ТС -->
автор темы ТС По умолчанию

А решение было такое:

Цитата:
$keys = array_unique(preg_filter("@(?<=^\d{3}).*[email protected]", "", $inv_nomer[0]));

foreach ($keys as $key) {
$sorted_tree[$key] = preg_grep("@^{$key}[email protected]", $inv_nomer[0]);
}
unset($key, $keys);
print_r($sorted_tree);
__________________
И пусть судьба несправедлива - вся жизнь игра, играй красиво
malishka вне форума  
Старый 29.07.2013, 17:14   #7
Chekist
Senior Member
 
Аватар для Chekist
 
Регистрация: 13.04.2007
Сообщений: 430
Бабло: $77428
По умолчанию

Цитата:
Сообщение от malishka Посмотреть сообщение
А решение было такое:
.... Решение привести к нормальной структуре данных, чтобы не ебаться с кастылями.
Chekist вне форума  
Старый 29.07.2013, 18:35   #8
imgreen
Senior Member
 
Аватар для imgreen
 
Регистрация: 15.11.2008
Сообщений: 12,134
Бабло: $247706056
По умолчанию

Цитата:
Знать кол-во "групп" и уникальную цифру, к примеру

1111 - 2шт.
2222 - 2шт.
...
4444 - 8 шт.
вот тебе функция в помощь
http://ru2.php.net/array_count_values


Цитата:
Надо как-то разбить, по этим уникальным первым цифрам. Т.е до тире, или цифра до ничего.
первый столбец чтоль? дык разбей explode-ом простым

Последний раз редактировалось imgreen; 29.07.2013 в 18:42.
imgreen вне форума