oihana / php-files
The Oihana PHP Files library
1.0.0
2025-08-13 09:05 UTC
Requires
- php: >=8.4
- ext-fileinfo: *
- ext-openssl: *
- devium/toml: ^1.0
- oihana/php-core: dev-main
- oihana/php-reflect: dev-main
Requires (Dev)
- ext-posix: *
- mikey179/vfsstream: ^1.6
- nunomaduro/collision: ^8.8
- phpdocumentor/shim: ^3.8
- phpunit/phpunit: ^12
README
A versatile PHP library for seamless and portable file and path handling.
📚 Documentation
User guides (FR + EN), with narrative explanations, examples, and security notes:
| 🇬🇧 English documentation | 🇫🇷 Documentation française |
| Getting started, paths, files, archives, OpenSSL, TOML, options, enums, tips. | Démarrage, chemins, fichiers, archives, OpenSSL, TOML, options, énumérations, astuces. |
Auto-generated API reference (phpDocumentor):
👉 https://bcommebois.github.io/oihana-php-files
🚀 Features
- 📁 Cross-platform path and file utilities — Normalize, join, and manipulate file paths with ease.
- 🔐 File encryption and decryption powered by OpenSSL.
- 🗜️ Create, compress and extract archives (.tar and .tar.gz).
- 📂 Recursive file discovery with advanced filters and options.
- 🧪 Full unit test coverage ensuring reliability and maintainability.
💡 Designed to be lightweight, testable, and compatible with any PHP 8.4+ project.
📦 Installation
Requires PHP 8.4+
Install via Composer:
composer require oihana/php-files
✅ Running Unit Tests
To run all tests:
composer run-script test
To run a specific test file:
composer run test ./tests/oihana/files/OpenSSLFileEncryptionTest.php
🧾 License
This project is licensed under the Mozilla Public License 2.0 (MPL-2.0).
👤 About the author
- Author : Marc ALCARAZ (aka eKameleon)
- Mail : marc@ooop.fr
- Website : http://www.ooop.fr
🛠️ Generate the Documentation
We use phpDocumentor to generate the documentation into the ./docs folder.
Usage
Run the command :
composer doc
🔗 Related packages
oihana/php-core– core helpers and utilities used by this library:https://github.com/BcommeBois/oihana-php-coreoihana/php-reflect– reflection and hydration utilities:https://github.com/BcommeBois/oihana-php-reflectoihana/php-enums– a collection of strongly-typed constant enumerations for PHP.:https://github.com/BcommeBois/oihana-php-enums
