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

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

Закрытая тема
Опции темы Опции просмотра
Старый 29.07.2013, 02:38   #1
malishka
Member
 
Аватар для malishka
 
Регистрация: 28.11.2009
Сообщений: 483
Бабло: $206055
По умолчанию Разбить подмассивы на вложенные подмассивы, по уникальной части значения [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,056
Бабло: $632595
По умолчанию

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

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

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

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

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

Цитата:
$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
Сообщений: 415
Бабло: $75558
По умолчанию

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

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

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


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

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