Модераторы: skyboy, MoLeX, Aliance, ksnk

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Поиск определенной фразы по массиву 
:(
    Опции темы
Zmiuko
Дата 20.10.2009, 09:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Ребят. Проблема такая.

Есть массив данных. Допустим это история сообщений гостевой книги.

Код

$arr = array(
array('Привет!'),
array('Как дела'),
array('И как? Нормально все'),
array('Хм..'),
array('Вот те раз! Вот те два!'),
array('Ухаха'),
array('Пипец'),
array('Хах ыыыыы')
);


Вносим, к примеру, в поиск "Привет как дела?", указываем ключ $a=1 , регистронезависимый , указываем ключ $b - первая максимально схожая строка, в случае отсутствия совпадений - выводит " Привет!" , либо "Привет как дела?" в случае совпадения

Не могу никак придумать функцию, которая бы искала указанную фразу среди массива имеющихся не смотря на знаки препинания...

Пробовал посредством ereg

Код

$pattern = implode('|',(xz($string)));

    if(eregi($pattern,$text)) { ...


где каждый элемент массива фильтруется, разбивается на слова и собирается в паттерн "Привет", либо "Как|дела" и  через регулярку сравнивается, но с различными фразами очень много косяков и часто поиск не работает.

Помогите решить проблему.

Поиск, гугл, яндекс - безрезультатно. Мускул не использую.

Добавлено @ 09:19

Код

/* Сравниваю каждый элемент массива с искомой фразой $string*/
for($m=0; $m<count($arr); $m++) {

    $pattern = implode('|',(xz($arr[$m]['0'])); 
    if (preg_match( "/(".$pattern.")*/is", $string )) {

            ...


Точнее так ничего не выходит...

Добавлено @ 09:19
Выводит последний элемент массива по любому запросу :(

Это сообщение отредактировал(а) Zmiuko - 20.10.2009, 09:22
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 09:27 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Подпись под всем этим неиллюзорно доставляет.

PM MAIL   Вверх
Zmiuko
Дата 20.10.2009, 09:39 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Не понял, пардон.

Я в регулярках дубок. 

Понимаешь, мне как то надо при поиске фразы, найти из массива ту фразу, которая по словам схожа, в каком порядке бы они не были..

На ум приходит только ereg('/слово|слово|слово/', $искомая_фраза) 

Можно хоть в массиве по паттерну искать, хоть паттерном по искомой фразе... однохерственно: и там и там словосочетания. Да и смысл дальнейшей работы, что мне формировать паттерн из элемнов массива удобнее будет.

Ну хз как сделать чтобы была регистронезависимость и любой порядок слов. :(

Добавлено через 2 минуты и 21 секунду
К примеру есть элемент массива "Петя любит Машу", и чтобы его находило по запросам "петя любит машу""Петя машу Любит" и так далее 
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 09:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Я-то понимаю. 
Мне интересно, поймет ли кто-то еще, в этом нагромождении не имеющих никакого отношения к задаче массивов, вложенных массивов, ключей, xz каких функций и прочего. 

И снова к вопросу о том, нужны ли алгоритмы пхп-программисту. Прекрасная иллюстрация. 
Мы наблюдаем сейчас случай, когда программист привыкнув, что алгоритм ему не нужен, пытается решить задачу "в лоб", так же, как обычно - просто написав один за другим несколько операторов. Только обычно алгоритм есть, неявный, и обычно получается. А здесь алгоритма нету совсем, и поэтому попытки выглядят очень смешно. 
PM MAIL   Вверх
Zmiuko
Дата 20.10.2009, 10:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Есть файл истори сообщений, читаем функцией file() в массив $arr:

Код

$arr = array(
array('Привет!'),
array('Как дела'),
array('И как? Нормально все'),
array('Хм..'),
array('Вот те раз! Вот те два!'),
array('Ухаха'),
array('Пипец'),
array('Хах ыыыыы')
);


Есть фраза "И как, все нормально", которая как видим присутствует в массиве, только порядок слов и регистр другой.

Далее, я пробегаю циклом по массиву, и обрабатываю каждый элемент функцией xz() (функция делит словосочетания в элементах по словам [то есть пробелам], уберает окончания и вывод в массив), затем результат функции xz() обрабатываю посредством implode('|', xz(**)) дабы получить паттерн для функции eregi.

Получаем:

Код

for($m=0; $m<count($arr); $m++) {
    $pattern = implode('|',(xz($arr[$m]['0']))); 
    /* Допустим $pattern от xz($arr['0']['0']) = "Привет", от xz($arr['1']['0']) = "Как|дел", от от xz($arr['2']['0']) = "И|как?|Нормальн|все" и т.д. */
    if(eregi($pattern,"И как, все нормально")) {
        echo $arr[$m]['0'];
    }
}


Должно вывести схожий по словам элемент, но фигвам! :( Чего тут непонятного?

P.s.: Вы уж извините, что я здесь функцию xz не привожу, но просто две страницы замет код.
PM MAIL WWW ICQ Skype Jabber   Вверх
skyboy
Дата 20.10.2009, 10:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



регулярка?
не получится написать регулярку "сначала либо первое слово, либо второе; затем - затем оставшееся, в зависимости от того, что было в первой позиции".
потому у тебя полученная регулярка будет находить по запросу "петя любит машу" и элемент "петя петя машу" и "машу машу машу". 
точнее, собрать регулярку возможно, но так как она будет для N слов состоять из N! вариантов разного порядка слов, то для поиска 5 слов будет регулярка из 120 вариантов порядка следования слов. А уж какой длины будет полученная регулярка, лучше не думать.
Это же просто смерть сервера.


PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Цитата(Ипатьев @  20.10.2009,  09:54 Найти цитируемый пост)
Я-то понимаю. 
Мне интересно, поймет ли кто-то еще, в этом нагромождении не имеющих никакого отношения к задаче массивов, вложенных массивов, ключей, xz каких функций и прочего. 

И снова к вопросу о том, нужны ли алгоритмы пхп-программисту. Прекрасная иллюстрация. 
Мы наблюдаем сейчас случай, когда программист привыкнув, что алгоритм ему не нужен, пытается решить задачу "в лоб", так же, как обычно - просто написав один за другим несколько операторов. Только обычно алгоритм есть, неявный, и обычно получается. А здесь алгоритма нету совсем, и поэтому попытки выглядят очень смешно.  


Хорошо написал, только вот не по делу. 

Я устал и не спал. Мог бы написать конечно "Народ, необходима функция для сравнения двух фраз, где порядок слов и регистр не имеет значения", но решил ситуацию изобразить полностью.
Нужны алгоритмы, не нужны... Отвечу, для формирования некой базы знаний нужно все, необходимо просто. Имхо только ошибки нас и учат. Мне, 16-летнему как-то сложные философские конструкции не к чему. А вы, Ипатьев, извиняюсь, ежели Вам не нравиться, нету желания, рябит в глазах от моего кода, лучше бы не показывали свой ум и мнение, а не писали вовсе. Зачем умолять в чужих глазах на этом форуме, для этого блоги есть.

Извиняюсь за флуд и прощу прощения что потревожил своими дурацкими идеями.

Добавлено через 2 минуты и 11 секунд
Цитата(skyboy @  20.10.2009,  10:39 Найти цитируемый пост)
зате


Хм.. А через eregi('слово|слово|слово') не получится?

дело в том что вышеуказанный код нормально реагирует на длинные фразы, а если я ищу слово "привет" то возращает пустое значение..
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 10:41 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(Zmiuko @  20.10.2009,  10:19 Найти цитируемый пост)
Есть файл истори сообщений, читаем функцией file() в массив $arr:

начнем с того, что функция file ничего похожего на массив $arr в принципе вернуть не может.
не говоря уже о том, что сам по себе массив является лишним звеном в задаче поиска по строке.

и так в этой задаче всё. миллион лишних телодвижений, за которыми сама задача (довольно простая, в сущности), совершенно теряется из виду.

если бы вы не пытались сделать все сразу - и поиск по массиву, и регистронезависимый, и без знаков препинания, то дело бы пошло быстрее.
а если бы вы сначала решили основную задачу - собственно поиск, вместо кучи второстепенных - то еще быстрее.


PM MAIL   Вверх
skyboy
Дата 20.10.2009, 10:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



если ты ищешь в строках определенные слова в произвольном порядке, то почему бы не разбить строку поиска и текст, в котором происходит поиск, на слова? И не проверять наличие определенного слова во множестве слов, вместо составления монструозной регулярки.
Цитата(Zmiuko @  20.10.2009,  09:41 Найти цитируемый пост)
Я устал и не спал.

я надеюсь, это не попытка вызвать сопливое сочувствие?
PM MAIL   Вверх
Ипатьев
Дата 20.10.2009, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(Zmiuko @ 20.10.2009,  10:41)
Цитата(Ипатьев @  20.10.2009,  09:54 Найти цитируемый пост)

И снова к вопросу о том, нужны ли алгоритмы пхп-программисту. 


Хорошо написал, только вот не по делу. 
Мне как-то сложные философские конструкции не к чему

Если кроме шуток, то в этом и состоит главная проблема. 
программа - это реализация алгоритма. Это так, вне зависимости от того, понимаете вы это, или нет.

И главная ваша проблема - в отсутствии алгоритма. 

Вы пишете программу, которая выполняет какие-то действия. Вы пытаетесь заставить выполнять ее какие-то действия. Но при этом эти действия - совсем не то, что вам нужно.
PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Цитата(Ипатьев @  20.10.2009,  10:41 Найти цитируемый пост)
охожего 


smile да вроде что содержимое $arr , что вывод в массив через file() это один и тот же массив, какая разница-то при отладке скрипта?... ну пускай из кода $arr[$m]['0'] уберем ['0'] , я так полагаю, что любой кодер на пыхе это поймет... тут вроде бы понятно все. Пожимаю плечами.
PM MAIL WWW ICQ Skype Jabber   Вверх
Учащий
Дата 20.10.2009, 10:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 18
Регистрация: 3.10.2009

Репутация: -1
Всего: -1



Не для слабых умов smile

Ты хочешь чтобы при вводе в табло поиска слово допустимое в массиве "Привет как дела" выводилось при нахождении, это у тебя получается, а если писать слово как дела привет, то он нечего не находит?

Я правельно понял??
PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 10:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Цитата(skyboy @  20.10.2009,  10:44 Найти цитируемый пост)
 


Блин, я вопрос всего задал. А тут флуда развелось. Вопрос же был не оценки моего знания, либо душевного равновесия. Вопрос касался, а почему это и вот это не работает, как лучше. Что касается стиля программирования, я уж как-нить сам уж... Мануалы почитаю чтоле.. Кто как кодит - какая разница-то?

Что за предвзятость-то?
PM MAIL WWW ICQ Skype Jabber   Вверх
skyboy
Дата 20.10.2009, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Zmiuko @  20.10.2009,  09:41 Найти цитируемый пост)
Хм.. А через eregi('слово|слово|слово') не получится?

то есть, тебя устроит, если для запроса "петя любит машу" станет "находиться" фраза "любит любит любит"? о_0
PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 10:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Я так понимаю, что на замечание, что мол все таки по делу надо что-то писать. Это я не о вас, skyboy. Люди здесь обижаются, что-то пишут о политики поставленных задач. Когда основы вполне просты и я сна задача. Даже если что-то не так, можно предупредить о той или иной проблеме.

Второй раз уже. Только первый раз когда спросил, зачем мне описывать то что мол так давно не пишут либо я нечитабельно пишу, мне замечание ставят и в кратковременный бан. 

Я матерюсь? Унижаю чье-либо достоинство? Не вежлив? Невествен? Оскобляю либо излишне резок?

Извините, просто далее обсуждение считаю бессмысленным с такой предвзятостью. 

Спасибо, что уделили время.
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Вообще, конечно, 16 лет - это похвально.
Я в 16 лет не пытался написать яндекс smile

Давайте вы расскажете, что вы хотите искать, и где. Безо всяких "Допустим".

PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 10:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Да видишь, я не могу найти подобную реализацию нигде. Хотя бы просто фразы сравнивало без учета регистра, но вот как быть с местоположением слов.

Добавлено через 2 минуты и 19 секунд
Мне необходимо в массиве найти значение элемента схожее с искомой фразой без учета регистра и знаков препинаний. Если возможно, то без учета порядка слов в предложении. Все перепробывал, везде что-то упускаю.
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 11:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Не хотите описывать реальную задачу? Считаете, что можете описать ее на абстрактном уровне? Хорошо.
Формальное определение "схожести" в студию.


Это сообщение отредактировал(а) Ипатьев - 20.10.2009, 11:06
PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 11:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Извиняюсь. До меня дошло: если использовать функцию eregi с паттерном вида слово|слово2|слово3 , то она вернет все значения массива где эти слова есть?

Значит выход возможен только если искомому фразу обратить в массив, также обратить в массив каждый элемент базы и сравнивать уже два массива? 


PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(skyboy @  20.10.2009,  10:52 Найти цитируемый пост)
то есть, тебя устроит, если для запроса "петя любит машу" станет "находиться" фраза "любит любит любит"? о_0 

ну в принципе, полнотекстовый так и работает. вопрос в весах...
PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 11:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Формально?

хм.. 

есть массив фраз каких угодно и сколько угодно.
необходима функция, которая осуществляет поиск конкретной фразы несмотря на изменный регистр и порядок слов.

К примеру: ищем фразу красивая Водонапорная башня нашего города

скрипт выдает при осуществлении поиска искомую фразу Башня водонапорная красивая Города Москвы .. несмотря на регистр и порядок слов.

Так должно быть 
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 11:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(Zmiuko @  20.10.2009,  10:50 Найти цитируемый пост)
Кто как кодит - какая разница-то?

Большая. Ваш "стиль", хе-хе, "программирования" - главная причина того, что вы не можете решить свою задачу. А точнее - даже сформулировать её.
А ещё точнее - пытаетесь решить задачу, не сформулировав её. Как в сказке - "пойди туда, не знаю куда " smile

Цитата(Zmiuko @  20.10.2009,  11:09 Найти цитируемый пост)
искомому фразу обратить в массив, также обратить в массив каждый элемент базы и сравнивать уже два массива? 

ну, элементы базы не обязательно - пхп умеет искать по строкам. а дальше? 
чем это принципиально будет отличаться от поиска регуляркой?

Добавлено @ 11:23
"конкретной фразы несмотря на измененный регистр и порядок слов" - это оксюморон. Если во фразе переставили слова, то это будет уже другая фраза. Тем более, что вы толкуете задачу на самом деле ещё шире - с изъятием слов из фразы.

Не годится определение.

Это сообщение отредактировал(а) Ипатьев - 20.10.2009, 11:25
PM MAIL   Вверх
Zmiuko
Дата 20.10.2009, 11:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Ладно, спасибо за консультацию, сам решу проблему.
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 11:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Ой, я невнимательно посмотрел ваш пример. Прошу прощения.
Судя по этому примеру, "построена новая красивая башня" и "упала новая красивая башня" - это одна и та же конкретная фраза. Нет слов. smile
PM MAIL   Вверх
NLspieler
Дата 20.10.2009, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 619
Регистрация: 13.10.2008
Где: Берлин

Репутация: 16
Всего: 19



А как же ошибки о опчатки?
"построина новя кросивая башня" 
        должна находить
"упала новая красивая башня"

Вообще, решение этой не простой задачи представляется мне таким:

1. Индексировать все слова при помощи soundex.
Получив таким образом массив:

$array[$номер_строки][$номер_слова] = soundex_слова.

2. Получить поисковый запрос. Разделить на слова. Найти soundex для каждого слова.
Массив соундексов поискового запроса:
$words_soundex[$номер]

3. Пройтись каждым из соуиндексов запроса, по массиву из информации $array.
Если обнаружено совпадение, увличить на еденицу значение переменной, соответсвующей номеру строки   
$sowpadeniya[$номер_строки]++ ;

4. Найти самое большое значение в массиве $sowpadeniya. Выдать номер строки с самым большим количеством совпадений. 

5. Дальше сложностей возникнуть не должно. 

При новом поисковом запросе, повторить начиная со второго пункта. 


Это сообщение отредактировал(а) NLspieler - 20.10.2009, 12:21
PM MAIL   Вверх
Ипатьев
Дата 20.10.2009, 12:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Это не решение данной задачи, а постановка новой. А автор еще со старой не разобрался smile
PM MAIL   Вверх
NLspieler
Дата 20.10.2009, 12:22 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 619
Регистрация: 13.10.2008
Где: Берлин

Репутация: 16
Всего: 19



Цитата(Ипатьев @  20.10.2009,  12:19 Найти цитируемый пост)
Это не решение данной задачи, а постановка новой. А автор еще со старой не разобрался

Ну пускай тогда напишет алгоритм по представленному описанию и будет ему счастье.
PM MAIL   Вверх
Ипатьев
Дата 20.10.2009, 12:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Дело в том, что поисковые алгоритмы -  вещь не до конца, мягко говоря, исследованная. 
И вы оба в своих желаниях заходите на территорию, которую и признанные авторитеты обходят стороной. 
Гугль, к примеру, не берется искать с учетом опечаток. А предлагает сначала исправить. А автор хочет, чтобы поиск понял, что ищущий имел в виду. То есть - контекст. А проблема контекста, кстати сказать - главный камень преткновения при распознавании речи. 
Так что тут далеко не все просто. 
И если бы автор четко сформулировал практическую проблему, которую он хочет решить, то решение нашлось бы. А так единственное, что он получит - это удовольствие от процесса. плюс - возможно - интерес, который побудит его приобрести новые знания, пойти в институт, и в конечном итоге - изобрести то, о чем он тут сейчас писал smile

PM MAIL   Вверх
skyboy
Дата 20.10.2009, 12:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Ипатьев @  20.10.2009,  10:10 Найти цитируемый пост)
ну в принципе, полнотекстовый так и работает. вопрос в весах... 

мне казалось, что запрос "слово1 слово2 слово3" должно находить блоки текста, в которых есть все три слова("И"), а не хотя бы одно("ИЛИ"), если не указано иначе. для "ИЛИ" подойдет и регуляркой(опустим пока вопрос о скорости) "слово1|слово2|слово3", разве нет?

Добавлено через 1 минуту и 22 секунды
Цитата(Zmiuko @  20.10.2009,  10:13 Найти цитируемый пост)
К примеру: ищем фразу красивая Водонапорная башня нашего города
скрипт выдает при осуществлении поиска искомую фразу Башня водонапорная красивая Города Москвы .. несмотря на регистр и порядок слов.

если быть последовательным, то тут на слово "нашего" положен болт.
тогда надо найти и текст, в котором от запроса только слово "города" есть?
PM MAIL   Вверх
Zmiuko
  Дата 20.10.2009, 14:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Очевидно вы не поняли суть проблемы и цели реализации.

Вот, обратите внимание.

Есть фразы в массиве 
"Питаюсь, ем радугу!"
"Ем радугу, сру бабочками" 
"Ем радугу, сру бабочками в кашемировом пальто" 

заходит Вася-пользователь и не зная че внутри находится вводит в поиск фразу еМ радугу бабочками сру

Цель: найти максимально точную морфологически и численно по колличеству слов фразу!

Я пытался при помощи стреммера Поттера, поместив искомую фразу в массив, обработав каждое слово в ней и выделив корень русского языка. Получилось!... Теперь как-то надо сравнить. полученную фразу с элементами массива, дабы вывести максимально схожую.

Думал, что возможно написать маску паттерна, где к примеру корень_слова*+корень_слова*+корень_слова* ищется в каждом элементе некоторое количество корней русских слов в произвольном порядке.

Я никак не могу осилить данную задачу.

Понимаю, что сложная задача, но все же. 

Что касается Гугла - тот морфологию языка в поисковых запросах не производит, да и не поисковик я пишу smile к тому же не в сравнении как-то smile

Добавлено через 11 минут и 55 секунд
Цель такова, сравнить морфологически дефолтовую фразу с обычной фразой... То есть в одной фразу окончаний нету, слова обрезаны, а вторая нормальная.

Поможете?
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 20.10.2009, 14:58 (ссылка) |   (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



skyboy, я так понял, что этот молодой человек хочет полнотекстовый поиск с ранжированием результатов по релевантности. При котором в ход идут как раз все слова, как три, так и по одному. Собственно, то, что он хочет, но не знает, как сказать - это релевантность. Которая, если на простом уровне и реализуется достаточно простым алгоритмом, но на практике встречает немало подводных камней.

Цитата(Zmiuko @  20.10.2009,  14:07 Найти цитируемый пост)
Очевидно вы не поняли суть проблемы и цели реализации.

Разумеется. Поскольку никто не потрудился их нам рассказать

Цитата(Zmiuko @  20.10.2009,  14:07 Найти цитируемый пост)
Я пытался при помощи стреммера Поттера, поместив искомую фразу в массив, обработав каждое слово в ней и выделив корень русского языка.

Вы можете получить таким образом совсем неожиданные результаты.
Некоторые ваши предшественники таким же образом решили проанализировать творчество одного очень интеллектуального  современного поэта. Программа выдала, что самые употребляемые им слова - это глаголы "мыть" и "какать". Только пережив некоторый шок, авторы программы сообразили, что программа не в состоянии отличить местоимение "какая" от деепричастия...

в общем, в итоге, вместо того, чтобы сократить, как я настоятельно рекомендовал, область поиска, вы ее расширяете. Вместо того, чтобы осилить хотя бы полнотекстовый поиск, вы одновременно хотите еще и поиск с учетом словоформ. Ну что ж. Желаю удачи smile
PM MAIL   Вверх
Ипатьев
Дата 20.10.2009, 15:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(Zmiuko @  20.10.2009,  14:07 Найти цитируемый пост)
Поможете? 

Понимаете какое дело.
Практическая задача решается очень просто. Но это решение упирается в гордое "Мускул не использую".
Заниматься же теоретическими изысканиями на пустом месте как-то не хочется. 

PM MAIL   Вверх
skyboy
Дата 20.10.2009, 16:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


неОпытный
****


Профиль
Группа: Модератор
Сообщений: 9820
Регистрация: 18.5.2006
Где: Днепропетровск

Репутация: 75
Всего: 260



Цитата(Ипатьев @  20.10.2009,  13:58 Найти цитируемый пост)
skyboy, я так понял, что этот молодой человек хочет полнотекстовый поиск с ранжированием результатов по релевантности. 

угу. я понял. хоть и не сразу.
предлагаю искать не "фразу" с использованием регулярных выражений, а каждой слово из поискового запроса в отдельности. Потом считать, сколько слов из поискового запроса было обнаружено в каждом блоке текста. Затем сортировать по количеству найденных в блоке слов из поискового запроса. Грубо говоря(без учета того, что в поисковом запросе могут быть слова с разной смысловой нагрузкой - местоимения и предлоги или прилагательные с узкоспециализированными терминами) чем больше слов из поискового запроса найдено в одном блоке, тем блок выше в общем зачете.
Когда сделаешь это, офигеешь от низкой скорости, то посмотри в сторону встроенного в mysql механизма полнотекстового поиска. Или sphinx. Или не смотри.
PM MAIL   Вверх
youri
Дата 21.10.2009, 02:07 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 6
Всего: 16



Цитата(Zmiuko @  20.10.2009,  14:07 Найти цитируемый пост)
Цель: найти максимально точную морфологически и численно по колличеству слов фразу!

тебя спрашивают не про проблемы, с которыми ты столкнулся, а что ты пишешь? Поисковик? Чат? Гостевую книгу? Или просто один консольный php-файл, который в массиве слова ищет?

Цитата(Zmiuko @  20.10.2009,  14:07 Найти цитируемый пост)
Поможете?

ну покопайся в исходниках phpMorphy или mysql, или sphinx smile
PM   Вверх
Zmiuko
Дата 23.10.2009, 02:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



AI пишу, если устроит.  smile Пытаюсь воспроизвести человеческое мышление. Ассоциативный подход и все такое. "Земля имеет форму шара" => "Шар круглый" => "Земля круглая" как видите искомые слова имеют разную форму так что проект все усложняется, усложняется и усложняется..

Добавлено через 53 секунды
Мы же, пардон, к несчастью - русские )))) вот и язык нам достался 40 тысяч слов + сленга в 10 раз еще больше...

Добавлено через 3 минуты и 9 секунд
Насчет phpMorphy ))) я ж казал что использую стреммер.. отсюда уже понятно что я изучал скрипты и phpMorphy и sphinx Гора полезнейшего материала, но не поможет эта гора моей проблеме.
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 23.10.2009, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Может, сначала знаний поднабраться?
Как-то, судя по приведенному коду, не особо вяжутся амбиции и используемый инструментарий. Это даже если говорить о проблеме поиска "в лоб". А "ассоциативный подход" требует несколько более мощного математического аппарата, чем поиск пересечения двух множеств, даже с которым вам справиться не удалось.


PM MAIL   Вверх
Zmiuko
Дата 24.10.2009, 16:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



smile Я подумаю на Вашим предложением

Можете хотябы подсказать подобную функцию поиска по многомерному массиву.

Допустим есть многомерный массив:

Код

/*представлю его в приписке значения к переменной*/

$array = array(
'0' => array('132' => 'Яблоко', 'Дерево' => 'Лиственница'),
'1' => array('автомобиль' => 'Опель', 'трамвай' => 'древний', 'скупой'=> 'математик'),
'2' => array('волшебный' => 'коршун')
и так далее...
);


Массив многомерный, состоит из элементов по очереди, каждый из которых в свою очередь тоже массив из скольки угодных значений (меняется количество)

Подскажите функцию которая производит поиск либо значения, либо ключа и возвращает 'ключ'=>'значение' 

В интернете находил, но вот сейчас утеряна. Извините за настойчивость.
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 24.10.2009, 16:30 (ссылка) |    (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



foreach
PM MAIL   Вверх
Zmiuko
Дата 24.10.2009, 21:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



smile 

Код

function multi_array_search($search_value, $the_array)
{
    if (is_array($the_array))
    {
        foreach ($the_array as $key => $value)
        {
            $result = multi_array_search($search_value, $value);
            if (is_array($result))
            {
                $return = $result;
                array_unshift($return, $key);
                return $return;
            }
            elseif ($result == true)
            {
                $return[] = $key;
                return $return;
            }
        }
        return false;
    }
    else
    {
        if ($search_value == $the_array)
        {
            return true;
        }
        else return false;
    }
}


...держи... вдруг до победного будешь foreach наяривать  smile  smile  smile 

p.S: Ах, да... Функция массив возвращает... буть готов  smile

Добавлено через 33 секунды
Шутю канечн...  smile 
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 24.10.2009, 21:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Ба. Рекурсия. Да-а, без нее, конечно в двумерном массиве ничего не найти. 
PM MAIL   Вверх
Ипатьев
Дата 24.10.2009, 21:50 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(Zmiuko @  24.10.2009,  21:17 Найти цитируемый пост)
p.S: Ах, да... Функция массив возвращает... буть готов  

ничего, я переживу. 
тем более, что массивчик небольшой получается. совсем крохотный.
PM MAIL   Вверх
Zmiuko
Дата 24.10.2009, 23:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Да двумерный-то причем, необходимо же в многомерном найти. Можно прыгать и при помощи foreach, ток вот кода туева хуча наполучается. А тут боле-менее компактненько.

А насчет сравнения двух строк "Мама мыла раму" и "Мама раму мыла", подумал, что необходимо будет использование функции array_diff(), сравниваем 2 массива ("A" и "B") и по результатам сравнения создаем 3й массив ("С") в котором будут те элементы массива "В" не найденные в массиве "А":

Код

$c = array_diff($b, $a);


Пляски с бубном: 
1. бьем искомую фразу по пробелам, удаляем окончания
2. помещаем обработанную фразу в массив
3. помещаем архив мильена фраз и словосочетаний, среди которых бум искать в красивый массив, по одному
4. начинаем сравнивать искомую, что в массиве и каждый элемент массива архивных данных разделенный также по пробелам и с убранными окончаниями и представленный временным массивом
5. получаем массив "C" разницы от искомого и элемента архива
6. если сount($С)>0, то все прошло славно smile

, как вам подобная реализация. Я понимаю, что ресурсоемко и грузно... но релевантность применима к SQL нежели простым файлам. не индексировать же мне данные базы. Да и не знаю каким образом подсчитывать число вхождений того или иного слова.
База представлена в файле, в таком виде:
Код

-привет-<>Привет<>-чем--занима-<>Чем занимаешься?<><>
-ничем-<>Да ничем :)<><><><>
... и т.д.


, если кому интересно... хотя я полагаю, что никому :(

PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 24.10.2009, 23:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



Цитата(Zmiuko @  24.10.2009,  23:28 Найти цитируемый пост)
необходимо же в многомерном найти

какой пример дали, в таком и ищем.
когда будет "многомерный" - тогда и будем о нем говорить.

Цитата(Zmiuko @  24.10.2009,  23:28 Найти цитируемый пост)
А тут боле-менее компактненько.

для того, чтобы найти только первое вхождение тут кода раз в 5 больше, чем нужно.

при этом очень странная организация словаря по которому ищем. зачем было делать двумерный массив, когда по одномерному поиск был бы в сто раз быстрее.
PM MAIL   Вверх
Zmiuko
  Дата 25.10.2009, 00:07 (ссылка)   | (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



 smile блин.. интересно, сорри за флуд, ты всем так тягу к программированию отбиваешь? ..."непонятно... вообще не понятно... нет цели..." еще напишешь скора - "ПИШИ, цук, РАЗБОРЧИВЕЙ"  smile 
Цитата(Ипатьев @  24.10.2009,  23:42 Найти цитируемый пост)
какой пример дали, в таком и ищем.
когда будет "многомерный" - тогда и будем о нем говорить.


Ага... можт еще 5 страниц флуда здесь расписать?  smile 

Йоперный балет! Какая, нахрен, разница какой код, какой пример... лишь бы показывало к чему это все. Пять раз обьяснял: ищу строку! Одна есть! Других - полный мешок! ..Спрашивал - как же мне, дураку, эту строку в массиве-то найти, несмотря на его многомерность! Да так найти чтобы несмотря на сумму слов в искомой строке (релевантность или как ее еще там, етиху... называют) . ДАБЫ ЧТОБЫ В БАЗЕ СМЫСЛОВЫХ ПОВТОРОВ НЕ БЫЛО! Опять не то?... Опять не понятно?.. Вопрос был в том как лучше это реализовать.

Суть в том! Есть ФАЙЛ с базой! Данные в нем... Да-да! Двумерный массив!.. Почему двумерный... не приставай.. пущай трех.. четырехмерный  будет.. 

Вооот! smile 

Эта база - база бота, допустим... Задаем боту вопрос... "Сколько тебе лет?" Вопрос идентичен вопросу "Сколько лет тебе?". Да, разные там суммы слов, но это и балбесу известно.. смысловая нагрузка верна! 

Вооот! smile 

В базе двумерный массив, как я уже говорил:
Код

"Вопрос?"<>"Ответ!"<>
"Вопрос?"<>"Ответ!"<>
Cколько тебе лет?<>Осьмнадцать<>
...
 smile 

Так вооот! smile 

Вот как мне найти среди базы, очевидно, что это первый столбец, строку "Сколько тебе лет?" , дабы вернуть пользователю ответ "Осьмнадцать" несмотря на очередность или как там... сумму слов в строке.

Вот затеялся мне этот бот. Развожу рукаме.  smile 
PM MAIL WWW ICQ Skype Jabber   Вверх
Ипатьев
Дата 25.10.2009, 00:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2232
Регистрация: 5.7.2009

Репутация: 28
Всего: 37



я, честно говоря, не понял, как массив
Цитата(Zmiuko @  24.10.2009,  16:16 Найти цитируемый пост)
$array = array(
'0' => array('132' => 'Яблоко', 'Дерево' => 'Лиственница'),
'1' => array('автомобиль' => 'Опель', 'трамвай' => 'древний', 'скупой'=> 'математик'),
'2' => array('волшебный' => 'коршун')
и так далее...
);

относится к 
Цитата(Zmiuko @  25.10.2009,  00:07 Найти цитируемый пост)
"Вопрос?"<>"Ответ!"<>
"Вопрос?"<>"Ответ!"<>
Cколько тебе лет?<>Осьмнадцать<>

в первом вместо вопросов просто цифры.
PM MAIL   Вверх
Zmiuko
Дата 25.10.2009, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


http://zmiuko.ru
**


Профиль
Группа: Участник
Сообщений: 297
Регистрация: 8.10.2008

Репутация: 2
Всего: 2



Просто предложил для примера. Не суть какой массив. Суть применить поиск к нему.

Извини, просто я как раз сейчас работаю с ним. Вот и меняю как ураган. 

Код

"Вопрос?"<>"Ответ!"<>
"Вопрос?"<>"Ответ!"<>
Cколько тебе лет?<>Осьмнадцать<>
Осьмнадцать<>Чего осьмнадцать?<>
Не знаю чего<>А кто знает?<>


Все думал какой же базу сделать. Сделал вот Вопрос-Ответ... Тупой бот получается  smile , но хочу добить эту штуковин, много идей с ним есть smile Главно научить его мало-мальски распозновать текст... хотяб 15 % логики от всего общения было б явным smile
PM MAIL WWW ICQ Skype Jabber   Вверх
Simpliest
Дата 3.11.2009, 10:14 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 625
Регистрация: 1.9.2009

Репутация: 1
Всего: 3



Zmiuko
Почитай историю о том, как программисты штурмовали шахматы.

Просто увеличь объем базы. И, даже с тупой логикой в 10ть строчек, бот у тебя будет вести весьма интеллектуальные беседы.


--------------------
user posted image
PM   Вверх
youri
Дата 3.11.2009, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 740
Регистрация: 17.4.2004

Репутация: 6
Всего: 16



Цитата(Simpliest @  3.11.2009,  10:14 Найти цитируемый пост)
Почитай историю о том, как программисты штурмовали шахматы

а можно ссылку?
PM   Вверх
Simpliest
Дата 3.11.2009, 14:12 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 625
Регистрация: 1.9.2009

Репутация: 1
Всего: 3



Цитата(youri @  3.11.2009,  13:15 Найти цитируемый пост)
а можно ссылку?

Увы. Сам я с этим знакомился еще когда занимался шахматами smile Т.е. лет 15-20ть назад... и в печатном виде.
могу кстати похвастаться тем, что лично проигрывал сопливому будущему чемпиону мира smile
Может гугл что-то даст smile

Из того что мне помнится - базовые алгоритмы были разработаны еще во времена Ботвинника(он кстати был неплохим математиком, хотя докторскую вроде по чему-то еще защищал) и во многом при его участии. 
Дальше вступили в дело мощности.

И, если я правильно помню, то вплоть до 2000го года победы машин(тех же Deep XXX) над гроссмейстерами были за счет заточки экспертных систем на игру конкретного человека.

Сейчас просто бьют массой и глубиной перебора.

Мур сделал свое черное дело smile


--------------------
user posted image
PM   Вверх
BlackRu
Дата 5.11.2009, 01:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 431
Регистрация: 14.9.2009

Репутация: нет
Всего: 4



Да, интересная задача. Рекомендую автору полистать  литературу на тему отличий естественного языка и искусственного, ознакомиться с работами по общему языкознанию, особенно по теме типы языков: аналитические - синтетические, не пропустить главу парадигматические отношения в лексике. Особенности синтаксиса русского  языка тоже придется учесть, они потрясающе кратко изложены на 1500 страницах в учебнике Белошапковой, блестящим научным языком, от которого даже у маститых лингвистов зубы сводит.  
Последние работы по психолингвистике тоже придется почитать, иначе не все понятно будет. 
Но дело эти не ограничится, так как русский язык имеет большую историю, то тем "Васей", который будет осуществлять поисковый запрос может оказаться вовсе не "Вася", а православная набожная бабушка-старушка, которая будет искать "Отче наш" на церковнославянском языке,  не приведи господь, ей описАться. 

В общем манов придется порядком покурить - особенно на тему язык и мышление - если уж задача так глобальна. 


--------------------
Удалена администрацией форума
PM MAIL WWW Skype   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1952 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.