Задачка на PHP

A6
На сайте с 19.10.2007
Offline
25
534

Допустим, есть массив из n русских словосочетаний. Надо разбить этот массив на массивы словосочетаний, начинающихся с одной буквы.

Как это можно реализовать?

DI
На сайте с 03.01.2007
Offline
123
#1


foreach ($array as $cur){
$first_letter = substr($cur,0,1);
$new_array["$first_letter"][] = $cur;
}

По идее, должны получиться массивы $new_array['а'], $new_array['b'] и т.п.

Высказывание идиотского утверждения требует на порядок меньше усилий, чем его последовательное и обоснованное опровержение и более того, иногда это опровержение вообще невозможно. © (http://zhurnal.lib.ru/s/shapiro_m_a/raspidiota.shtml)
E
На сайте с 11.08.2007
Offline
34
#2

примитивно перебором

function new_arr($letter,$old_array)

{

foreach ($old_array as $value) if (str_pos('-'.$value,$letter)==1) $new_arr[]=$value;

return $new_arr;

}

Антикризисная покупка и продажа слонов (http://www.slons.ru/?ref=web)
E
На сайте с 11.08.2007
Offline
34
#3

гы... опоздал )

I
На сайте с 04.06.2007
Offline
61
#4

если заглавные=прописные, то так


foreach ($array as $cur){
$first_letter = strtolower(substr($cur,0,1));
$new_array["$first_letter"][] = $cur;
}
A6
На сайте с 19.10.2007
Offline
25
#5

Спасибо, именно то,что надо

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий