kiwilan / php-archive

PHP package to handle archives (.zip, .rar, .tar, .7z, .pdf) with unified API and hybrid solution (native/p7zip), designed to works with EPUB and CBA (.cbz, .cbr, .cb7, .cbt).
MIT License
6 stars 5 forks source link

[Bug]: Trying file_get_contents() on a folder #49

Open sitroz-oz opened 6 months ago

sitroz-oz commented 6 months ago

What happened?

I receive PHP Notice: file_get_contents(): Read of 8192 bytes failed with errno=21 Is a directory in /.../vendor/kiwilan/php-archive/src/Processes/SevenZipProcess.php on line 155 when i tries to read content from array $files = $zip->getFiles();

I'm try to read ZIP archive with subfolders. And i can't normaly get info if it's dir. This is my code: image

Output with dump filenames and extensions:

array:2 [ "$file->getFilename()" => "Бух.отч. от аудиторов полная 2017" "$file->getExtension()" => " от аудиторов полная 2017" ] // app/Services/ExternalSources/EDisclosure.php:273 PHP Notice: file_get_contents(): Read of 8192 bytes failed with errno=21 Is a directory in /home/www/dev.eninvs.com/vendor/kiwilan/php-archive/src/Processes/SevenZipProcess.php on line 155

Notice: file_get_contents(): Read of 8192 bytes failed with errno=21 Is a directory in /home/www/dev.eninvs.com/vendor/kiwilan/php-archive/src/Processes/SevenZipProcess.php on line 155 "skipping folder or empty file: Бух.отч. от аудиторов полная 2017" array:2 [ "$file->getFilename()" => "Аудиторское заключ. 2017.pdf" "$file->getExtension()" => "pdf" ] array:2 [ "$file->getFilename()" => "Баланс и ОФР 2017.pdf" "$file->getExtension()" => "pdf" ] array:2 [ "$file->getFilename()" => "Отчет о движении ден.средств 2017.pdf" "$file->getExtension()" => "pdf" ]

How to reproduce the bug

If you want repeat it then read all files in loop in archive with subfolders. Subfolders should contain dots in it's name.

Package Version

2.1.02

PHP Version

8.1.27

Which operating systems does with happen with?

Linux

Notes

No response