PHPackages                             axy/fs-ifs - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [File &amp; Storage](/categories/file-storage)
4. /
5. axy/fs-ifs

ActiveLibrary[File &amp; Storage](/categories/file-storage)

axy/fs-ifs
==========

Abstraction of file system functions

0.0.4(9y ago)01201[1 issues](https://github.com/axypro/fs-ifs/issues)1MITPHPPHP &gt;=5.4.0

Since Apr 1Pushed 8y ago1 watchersCompare

[ Source](https://github.com/axypro/fs-ifs)[ Packagist](https://packagist.org/packages/axy/fs-ifs)[ Docs](https://github.com/axypro/fs-ifs)[ RSS](/packages/axy-fs-ifs/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependenciesVersions (5)Used By (1)

axy\\fs\\ifs
============

[](#axyfsifs)

Abstraction of file system functions (PHP).

[![Latest Stable Version](https://camo.githubusercontent.com/a67be8a7c90a326f015cb088b4a9b623ed31699ab46cfb723aa58368358311d6/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f6178792f66732d6966732e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/axy/fs-ifs)[![Minimum PHP Version](https://camo.githubusercontent.com/b52c83f3d45755ebcb1e6863ebb202ab192aaf773424369ffdeedae107f027ef/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f7068702d253345253344253230352e342d3838393242462e7376673f7374796c653d666c61742d737175617265)](https://php.net/)[![Build Status](https://camo.githubusercontent.com/2a81321e7418ad08a1734d9ce85793b591bcf4c506b5a0acf526f2ad03638751/68747470733a2f2f696d672e736869656c64732e696f2f7472617669732f61787970726f2f66732d6966732f6d61737465722e7376673f7374796c653d666c61742d737175617265)](https://travis-ci.org/axypro/fs-ifs)[![Coverage Status](https://camo.githubusercontent.com/d1b89192c12ea637367f64438b51c34e65614f01a4b2b24d23e1b9ed40001ceb/68747470733a2f2f636f766572616c6c732e696f2f7265706f732f61787970726f2f66732d6966732f62616467652e7376673f6272616e63683d6d617374657226736572766963653d676974687562)](https://coveralls.io/github/axypro/fs-ifs?branch=master)[![License](https://camo.githubusercontent.com/8b4aa7a8434052bbb7debb168f97f501f1481f7b937475291619897497850f51/68747470733a2f2f706f7365722e707567782e6f72672f6178792f66732d6966732f6c6963656e7365)](LICENSE)

- The library does not require any dependencies.
- Tested on PHP 5.4+, PHP 7, HHVM (on Linux), PHP 5.5 (on Windows).
- Install: `composer require axy/fs-ifs`.
- License: [MIT](LICENSE).

Documentation
-------------

[](#documentation)

[Documentation in Russian](https://github.com/axypro/fs-ifs/wiki).

The library reproduces [built-in file system functions](http://php.net/manual/en/ref.filesystem.php).

Differences:

- The application code to access files not via global functions, and via an object with a particular interface. This object is easily replaced by another implementation. Can use a mock for tests (it does not work with real file system, but with memory).
- [Exceptions](doc/errors.md) instead of WARNINGs.
- Separate class for [work with opened file](doc/IFile.md).
- Several results are structured as objects ([Stat](Stat.md), [MetaData](MetaData.md)) instead associative arrays. It improves the autocomplete.
- Method names are better structured.
- Specific implementations can implement additional features. Log, an isolated directory and etc.

Implementations
---------------

[](#implementations)

This package defines only interfaces. Specific implementations are located in other packages. For example, work with real FS is [axy/fs-real](https://github.com/axypro/fs-real).

Classes and interfaces
----------------------

[](#classes-and-interfaces)

- [IFS](doc/IFS.md) - functions for work with FS.
- [IFile](doc/IFile.md) - opened file.
- [Stat](doc/Stat.md) - result of `stat()`.
- [MetaData](doc/MetaData.md) - meta data of an opened file.
- [Exceptions](doc/errors.md).
- [Factory](doc/Factory.md).

###  Health Score

25

—

LowBetter than 37% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity11

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity51

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~135 days

Total

4

Last Release

3285d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/e5b3a2db8d5614167d4510019e3373dbba63c6aade58d38d23f3e7d2e63c3c4a?d=identicon)[axy](/maintainers/axy)

---

Top Contributors

[![vasa-c](https://avatars.githubusercontent.com/u/557081?v=4)](https://github.com/vasa-c "vasa-c (11 commits)")

---

Tags

filedirectoryfile system

### Embed Badge

![Health badge](/badges/axy-fs-ifs/health.svg)

```
[![Health](https://phpackages.com/badges/axy-fs-ifs/health.svg)](https://phpackages.com/packages/axy-fs-ifs)
```

###  Alternatives

[adlawson/vfs

Virtual file system

300433.0k21](/packages/adlawson-vfs)[crysalead/dir

Recursive directory scanner to locate directories and/or files in a file system

13214.5k4](/packages/crysalead-dir)[icecave/temptation

Painless temporary files and directories that clean up after themselves.

129.3k2](/packages/icecave-temptation)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
