Почему мой скрипт PHP висит? $path = tempnam(sys_get_temp_dir(), '').'.txt'; $fileInfo = new \SplFileInfo($path); $fileObject = $fileInfo->openFile('a'); $fileObject->fwrite("test line\n"); $fileObject2 = $fileInfo->openFile('r'); var_dump(file_exists($path)); // bool(true) var_dump(file_get_contents($path)); // string(10) "test line // " var_dump(iterator_count($fileObject2)); // Hangs on this Если я удалю последнюю строку ( iterator_count(… ) и заменим ее следующим: $i = 0; $fileObject2->rewind(); while (!$fileObject2->eof()) { […]
Я использую SplFileObject и LimitIterator для чтения содержимого с позиции x до y большого файла. Это отлично работает при использовании пути к файлу, например /home/devel/stuff/myfile.log . При использовании пути, например http://mydomain.com:8090/devel/stuff/myfile.log он не работает. Однако путь правильный. Сбой при использовании абсолютных путей? Сообщения об ошибках: PHP Warning: SplFileObject::rewind() [<a href='splfileobject.rewind'>splfileobject.rewind</a>]: stream does not support seeking […]