Другие упоминали об этом: PHP не поддерживает fseek()
и rewind()
в нелокальных потоках. Я предлагаю вам скачать / кэшировать файл и взаимодействовать с ним. Например
$cache = fopen('php://temp', 'r+');
stream_copy_to_stream($remoteResource, $cache);
Теперь вы должны иметь возможность делать с $cache
все, что вы делали с $remoteResource
раньше, за исключением того, что теперь вы можете искать внутри (и, следовательно, также перематывать) его. Если вы закроете временный поток, PHP автоматически очистит все используемые ресурсы.