![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| box |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
Люди , помогите разобратся , ничего не получается , а именно , есть два массива , нужно опредилить какие элементы идентичны , а какие нет , короче говоря , если елемент 1 из массива 1 отсутствует во всем массиве 2 , значит идет одна ветка программы , в противном случае другая . все вроде-бы очень просто !!!
Это сообщение отредактировал(а) PARROT - 19.3.2007, 09:35 |
||||
|
|||||
| mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 19 Всего: 54 |
box, не до конца понятна логика вашего кода.
Вообще для этих целей используются функции in_array() и array_search() -------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
да нет эти функции мне не подойдут , во первых мне нужно не 100% совпадение искать , а во вторых мне важно знать где , на какой позиции в масиве произошло совпадение !
мне нужно что-бы надпись " а этих элементов нет в массиве " выводилась в том случае если в массиве baza1 Не найдено ни одно совпадение с массиом $text !!! т.е так -берем 1 элеммент из масива $text И сравнивам его со всеми элементами масива baza1 и в случае не найденом , выводим надпись !!! и так в цыкле , до тех пор , пока массив $text Не опустеет ! |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
а у меня повторяются совпавшие с несопавшими элементы !!!
вот скриншот: 13340>>>>А этих элементов нет в списке-------12 Stones - Broken 0>>>Найдено совпадений =======12 Stones - Broken>>>--->>12 Stones-Broken 13340>>>>А этих элементов нет в списке-------12 Stones - Running Out Of Pain 13340>>>>А этих элементов нет в списке-------140 ударов в минуту - Ой-Ой-Ой 0>>>Найдено совпадений =======140 ударов в минуту - Ой-Ой-Ой>>>--->>140 ударов в минуту-Ой-Ой-Ой |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
Да , и что самое интересное , так это то что логически все верно : берем первый элемент из массива
$text и сравниваем его со всеми элементами масива $baza1 в случае совпадения , выводим надпись , а в случае не совпадения $zek++; На выходе из цыкла проверяем , равно ли $zek count($baza1), и если да , то выводим надпись " элемент отсутсвует в массиве " , обнуляем $zek , и повторяем цыкл до count($text) !!! вродебы все правельно , а все равно не хочет работать так как надо !!! Почему ??? |
|||
|
||||
| mishaSL |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 19 Всего: 54 |
Я думаю так будет лучше:
-------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
|||
|
||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
Спасибо конечно , но боюсь что этот вариант мне не очень-то подойдет , потому-что мне важно знать в какой позиции в обоих массивах найдено совпадение , что-бы знать в какой последовательности заносить в бд !!!иными словами , я-ж не просто так поставил у себя в коде вложенный цыкл !!!
Да кстати , ваш код работает отлично , а почему-же мой не работает ? ведь все логически правельно построено !!! Это сообщение отредактировал(а) box - 19.3.2007, 18:46 |
|||
|
||||
| mishaSL |
|
||||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1046 Регистрация: 10.1.2007 Где: Санкт-Петербург Репутация: 19 Всего: 54 |
т.е. индексы найденных элементов, так это тоже не большая проблема:
А структуру массива $more уже меняешь как хочешь, можешь в $more['log'] заносить индекс и процент совпадения и т.д. 1. Это не сравнение. а присвоение, оно всегда будет true, сравнение == 2. Ты уверен что индексы в этих двух массивах совпадают и начинаются с единицы 3. Логика всетаки странная Если уже перебирать циклами, то что-то вроде этого:
-------------------- Лучший способ научиться программированию - это посмотреть как это делают другие... |
||||
|
|||||
| box |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 506 Регистрация: 27.2.2007 Репутация: 0 Всего: 0 |
ну класс , спасибо большое !!!
|
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |