Главная страница /
Программирование на PHP /
Поиск в массиве...
Привет!
Есть файл, содержащий следующее:
1|2|Яблоко
2|2|Мандарин
3|3|Апельсин
4|2|Груша
5|4|Лимон
При загрузке ссылки вида link.php?id=x должен произойти поиск по первой колонке и найти строку, равную x. И по этой строке на экран должно быть выведено содержание третьей колонки. Т.е. если ссылка link.php?id=4 (4 строка), на экран должно быть выведено "Груша".
Примечание: по номеру строки определить нельзя, так как они могут быть не по порядку. И отсортировать не получится, так как могут быть пропущенные номера.
Как такое сделать? Как осуществлять поиск по первой колонке?
Спасибо!
если в файле много строк (а у меня их больше 1000), тогда под этот скрипт будут хорошо подходить такие (если id=4):
ну и т.д.
я добавил i для замечательно того, чтобы искать "i4|"
вот тогда будет находиться только одна строка.
Важно заметить, кстати, у меня получилось вот что:
list($1,$2,$3)=explode("|", $line);
Сам скрипт еще не тестировал, но вроде все ок.
Кстати, нашел, что break останавливает for, foreach, while и др.
В моем случае (когда идет перебор всех строк - а их больше 1000), этот самый break сработает? Остановит дальнейший перебор, когда найдет "i4|"?
И еще одно (вопрос профессионалам): можно ли этот скрипт качественно упростить так, чтобы увеличить скорость вывода результата? Если например, строк будет 100000, это же долговато будет? Или я ошибаюсь?
Главная страница /
Программирование на PHP /
Поиск в массиве... /
если в файле много строк а у меня их больше 1000 , тогда под это