PHPackages                             zerig/file-manager - 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. zerig/file-manager

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

zerig/file-manager
==================

This NAMESPACE group specializes in File/Folder structures. It loads files and folders into class.

v1.0.5(6y ago)018MITPHPPHP &gt;=5.6.0

Since Apr 15Pushed 6y ago1 watchersCompare

[ Source](https://github.com/Zerig/file-manager)[ Packagist](https://packagist.org/packages/zerig/file-manager)[ RSS](/packages/zerig-file-manager/feed)WikiDiscussions master Synced 4d ago

READMEChangelog (6)Dependencies (1)Versions (7)Used By (0)

FILE MANAGER
============

[](#file-manager)

- needs **\\UrlParser\\Url** class

This NAMESPACE group specializes in File/Folder structures. It loads files and folders into class.

1. FILE MANAGER \\ **FF**
2. FILE MANAGER \\ **FILE**
3. FILE MANAGER \\ **FOLDER**

FILE MANAGER \\ FF
------------------

[](#file-manager--ff)

This class is universal for File/Folder. Another classes inherit from this class.

```
namespace FileManager;

class FF{
	public $url;			// UrlParser\Url::www/_img/file.jpg
	public $size;			// 79949
	public $name;			// file.jpg
	public $mode;			// 0777
	public $dir;			// UrlParser\Url::www/_img/

	public function __construct($ff_url){}	// get Url and create class
	public function set($ff_url){}		// set all init class variables
	public function setUrl($ff_url){}	// set URL variable as obj \UrlParser\Url

	public function isFolder(){}	// check if URL is existing FOLDER
	public function isFile(){}	// check if URL is existing FILE
	public function exist(){}	// check if URL is real File OR Folder

	public function rename($new_name){}	// Rename File in the same folder
	public function move($new_dir){}	// Move fole to another folder
}
```

```
// BOTH variant are possile ↓
$ff = new \FileManager\FF("root/aaa/bbb/file.txt");
$ff = new \FileManager\FF( new \UrlParser\Url("root/aaa/bbb/file.txt") );

public $url => \UrlParser\Url::getString() => "root/aaa/bbb/file.txt"
public $size => 80
public $name => "file.txt"
public $mode => 0777
public $dir => \UrlParser\Url::getString() => "root/aaa/bbb"
```

---

FILE MANAGER \\ FILE
--------------------

[](#file-manager--file)

- class File extends **\\FileManager\\FF**

This class is extends FF. It specializes in Files.

```
namespace FileManager;

class File extends FF{
	public $url;			// UrlParser\Url::www/_img/file.jpg
	public $size;			// 79949
	public $name;			// file.jpg
	public $mode;			// 0777
	public $dir;			// UrlParser\Url::www/_img/

	public $filename;	// file
	public $extension;	// .jpg
	public $mime;		// text/plain

	public function __construct($ff_url){}	// get Url and create class
	public function set($ff_url){}		// set all init class variables
	public function setUrl($ff_url){}	// set URL variable as obj \UrlParser\Url

	public function isFolder(){}	// check if URL is existing FOLDER
	public function isFile(){}	// check if URL is existing FILE
	public function exist(){}	// check if URL is real File OR Folder

	public function rename($new_name){}	// Rename File in the same folder
	public function move($new_dir){}	// Move fole to another folder

	public function isTemporary($file_url){}	// check if file is temporary => "***.tmp"
	public function copy($copy_name = null){}	// copy file and return new obj
	public function upload(File $local_file){}	// upload temporary file into object and folder
	public function delete(){}			// delete file NOT obj

}
```

```
// BOTH variant are possile ↓
$file = new \FileManager\File("root/aaa/bbb/file.txt");
$file = new \FileManager\File( new \UrlParser\Url("root/aaa/bbb/file.txt") );

// These ↓ are in parent class FF
public $url  => \UrlParser\Url::getString() => "root/aaa/bbb/file.txt"
public $size => 80
public $name => "file.txt"
public $mode => 0777
public $dir  => \UrlParser\Url::getString() => "root/aaa/bbb"

// These are specific for File class
public $filename	=> "file"
public $extension	=> "txt"
public $mime		=> "text/plain"
```

---

FILE MANAGER \\ FOLDER
----------------------

[](#file-manager--folder)

- class File extends **\\FileManager\\FF**
- needs **\\FileManager\\File** class

This class is extends FF. It specializes in Files.

```
namespace FileManager;

class Folder extends FF{
	public $url;			// UrlParser\Url::www/_img/folder
	public $size;			// 79949
	public $name;			// folder
	public $mode;			// 0777
	public $dir;			// UrlParser\Url::www/_img/

	public function __construct($ff_url){}	// get Url and create class
	public function set($ff_url){}		// set all init class variables
	public function setUrl($ff_url){}	// set URL variable as obj \UrlParser\Url

	public function isFolder(){}	// check if URL is existing FOLDER
	public function isFile(){}	// check if URL is existing FILE
	public function exist(){}	// check if URL is real File OR Folder

	public function rename($new_name){}	// Rename File in the same folder
	public function move($new_dir){}	// Move fole to another folder

	public function copy($copy_name = null){}	// copy folder with everything inside and return new obj
	private function recurseCopy($src,$dst){}	// this method helps copy() method capy all subfolders
	public function scan($column = null){}		// scan folder and return current Files/Folders
	public function scanTree($column = null){}	// scan folder and return tree of all subFFolders and Files
	public function delete(){}			// delete folder and everything inside

}
```

```
// BOTH variant are possile ↓
$folder = new \FileManager\Folder("root/aaa/bbb/folder");
$folder = new \FileManager\Folder( new \UrlParser\Url("root/aaa/bbb/folder") );

// These ↓ are in parent class FF
public $url  => \UrlParser\Url::getString() => "root/aaa/bbb/folder"
public $size => 0
public $name => "folder"
public $mode => 0777
public $dir  => \UrlParser\Url::getString() => "root/aaa/bbb"
```

###  Health Score

24

—

LowBetter than 32% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity6

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity55

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 ~1 days

Total

6

Last Release

2214d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/17721175?v=4)[Zerig](/maintainers/Zerig)[@Zerig](https://github.com/Zerig)

---

Top Contributors

[![Zerig](https://avatars.githubusercontent.com/u/17721175?v=4)](https://github.com/Zerig "Zerig (138 commits)")

---

Tags

filefile managerfolder

### Embed Badge

![Health badge](/badges/zerig-file-manager/health.svg)

```
[![Health](https://phpackages.com/badges/zerig-file-manager/health.svg)](https://phpackages.com/packages/zerig-file-manager)
```

###  Alternatives

[tomatophp/filament-browser

File &amp; Folders &amp; Media Browser With Code Editor

407.6k2](/packages/tomatophp-filament-browser)[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)
