Почему fseek не работает с HTTP?
Почему fseek не работает не работает с хэндлами, открытыми fopen, в которых файла находятся на HTTP и FTP?
И есть ли возможность как-то перемещатся по удалённому файлу, причём этот файл находится по относительному пути, т.е. не прямая ссылка, а ссылка с параметрами: index.php?params=777 ?
Код:
$akafile = join("", file("http://www.somehost.com/?q=query_string"));
и перемещаться по строке посимвольно )))
или скушать определённое количество байтов (если ты уж пользуешь fopen то можно попользовать и fread) и опять же перемещаться по полученным данным :)
PS: а почему не работает... ну потому что наверное даже в документации так написано
[quote="http://ru2.php.net/fseek"]
May not be used on file pointers returned by fopen() if they use the "http://" or "ftp://" formats.
[/quote]
Нельзя работать с PHP не понимая принципов работы протокола HTTP.
Не может использоваться на файловых указателях, возвращённых функцией fopen(), если они используют форматы "http://" или "ftp://". fseek() также возвращает неопределённый результат для потоков "дописать в конец" (открытых с флагом "a").
а потом просто тупо работа со строкой.
2 RussianSpy & Тень Пса: у меня задача другая, мне надо как можно меньше трафа съесть, а так каждую страницу обрабатывать придётся, мне надо только часть выдрать из неё только несколько сотен байт... А так понятно, что можно каждую страницу качать и разбивать
Цитата: Rexulnik
Я читал документацию, и знаю, что там написано.
2 RussianSpy & Тень Пса: у меня задача другая, мне надо как можно меньше трафа съесть, а так каждую страницу обрабатывать придётся, мне надо только часть выдрать из неё только несколько сотен байт... А так понятно, что можно каждую страницу качать и разбивать
2 RussianSpy & Тень Пса: у меня задача другая, мне надо как можно меньше трафа съесть, а так каждую страницу обрабатывать придётся, мне надо только часть выдрать из неё только несколько сотен байт... А так понятно, что можно каждую страницу качать и разбивать
Это протокол НТТР - тут по-другому быть не может. Купи книжку потолще по TCP/IP и долго вдумчиво читай раздел посвященный протоколам высокого уровня (желательно несколько раз).
невозможно произвести поиск и выборку элемента или цепочки элементов, не просмотрев последовательность целиком. это даже не сетевые протоколы - это теория автоматов )))