[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Работа с файлом
roooto
Доброго времени суток. У меня возникли затруднения в работе с файлами.
Мне нужно считать в переменную определенное слово из файла txt. Мне известен номер этого слова в файле. Способ, когда мы считываем весь файл в переменную, потом разбиваем текст в массив через "explode" не подходит - файл большой. Спасибо за ответы!
Игорь_Vasinsky
ну ты покажи формат данных то в файле и что нужно выдернуть)

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
roooto
Цитата (Игорь_Vasinsky @ 26.04.2013 - 14:38)
ну ты покажи формат данных то в файле и что нужно выдернуть)

в файле просто текст.

ну предположим текст:
У лукоморья дуб зелёный;
Златая цепь на дубе том:
И днём и ночью кот учёный
Всё ходит по цепи кругом;
Идёт направо - песнь заводит,
Налево - сказку говорит.


я знаю, что мне нужно 6-е слово. Как сделать чтобы слово "цепь" оказалось в переменной?
ilyaplot
Читайте файл по несколько килобайт, склеивайте строку и считайте количество слов. Как только количество подойдет к нужному, чтение файла можно прервать.
Если известно, что слово где-то в конце, можно читать файл не с начала, но тогда не будет известен точный порядковый номер слова.

А какая задача вообще? Может и от файла можно отказаться

_____________
Заработай на Userator
exotica
а нельзя допустим поместить содержимое файла в $переменную , а потом провести поиск в переменной? или это будет очень ресурсоемко при длинном тхт? huh.gif

_____________
[FAQ]Регистрации пользователей, сохранение в БД
---------------------------------------------------------------------------
Выходя из ванной, вышел из нее два раза
Игорь_Vasinsky
я тока понять не могу)

если ты знаешь что за слово - зачем тебе его из файла выдёргивать? ты же его и так знаешь)))

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
roooto
Цитата (ilyaplot @ 26.04.2013 - 15:27)
Читайте файл по несколько килобайт, склеивайте строку и считайте количество слов. Как только количество подойдет к нужному, чтение файла можно прервать.
Если известно, что слово где-то в конце, можно читать файл не с начала, но тогда не будет известен точный порядковый номер слова.

А какая задача вообще? Может и от файла можно отказаться

нет, отказаться никак. А можно пример, как это реализовать?

Цитата (exotica @ 26.04.2013 - 15:41)
а нельзя допустим поместить содержимое файла в $переменную , а потом провести поиск в переменной? или это будет очень ресурсоемко при длинном тхт? huh.gif

так уже сделано, и это получилось ресурсоемко sad.gif
Цитата (Игорь_Vasinsky @ 26.04.2013 - 15:45)
я тока понять не могу)

если ты знаешь что за слово - зачем тебе его из файла выдёргивать? ты же его и так знаешь)))

я знаю только его номер в тексте ("6" в моем примере). А что за слово прячется за этим номером я не знаю.


Игорь_Vasinsky
Цитата
я знаю, что мне нужно 6-е слово


Цитата
ну предположим текст:
У лукоморья дуб зелёный;
Златая цепь на дубе том:
И днём и ночью кот учёный
Всё ходит по цепи кругом;
Идёт направо - песнь заводит,
Налево - сказку говорит.


блин, раз 10 пересчитывал. как цепь у тебя 6е слово?

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
roooto
Цитата (Игорь_Vasinsky @ 26.04.2013 - 18:00)
блин, раз 10 пересчитывал. как цепь у тебя 6е слово?


У лукоморья дуб зелёный;
Златая цепь на дубе том:

у - 1
лукоморья - 2
дуб - 3
зеленый - 4
златая - 5
цепь - 6
Игорь_Vasinsky
:lol: :lol: :lol: а я с этим считал))
Цитата
ну предположим текст:


$file = 'file.txt';

$data = explode(file_get_contents($file));

$result = $data[5];


_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.