chillerlan/php-filereader

A simple filereader. PHP 7.2+

2.0.0 2019-03-06 20:14 UTC

This package is auto-updated.

Last update: 2024-03-07 14:28:18 UTC


README

A simple file/directory reader for all (well, most... ok. some.) of your file-reading needs.

version license Travis Coverage Scrunitizer Packagist downloads PayPal donate

Requirements

  • PHP 7.2+

Documentation

Installation

requires composer

composer.json

(note: replace dev-master with a version boundary)

{
	"require": {
		"php": ">=7.2.0",
		"chillerlan/database": "dev-master"
	}
}

Manual installation

Download the desired version of the package from master or release and extract the contents to your project folder. After that:

  • run composer install to install the required dependencies and generate /vendor/autoload.php.
  • if you use a custom autoloader, point the namespace chillerlan\Filereader to the folder src of the package

Profit!

Usage

simple

You can just invoke one a FSDriverInterface and use it right away:

use chillerlan\Filereader\Drivers\DiskDriver;

$filereader = new DiskDriver;
$filereader->isDir('/some/path');

advanced

$directory = new Directory($filereader, '/some/path');

/** @var \chillerlan\Filereader\File $file */
foreach($directory->read() as $file){
	echo $file->name;
	// ...
}

API

FSDriverInterface methods

method return
fileExists(string $path) bool
isFile(string $path) bool
fileContents(string $path) string
getRequire(string $path) mixed
deleteFile(string $path) bool
copyFile(string $source, string $destination, bool $overwrite = true) bool
isDir(string $path) bool
makeDir(string $path) bool
deleteDir(string $path) bool
rename(string $oldname, string $newname, bool $overwrite = true) bool

Directory public methods

method return
__construct(FSDriverInterface $driver, string $path) -
change(string $path) Directory
read() array of File objects
create(string $subdir = null) bool
delete(string $subdir = null) bool
rename(string $newname, bool $overwrite = true) Directory

File public methods

method return
__construct(FSDriverInterface $driver, Directory $directory, string $name) -
exists() bool
content() string
getRequire() mixed
copy(string $destination, bool $overwrite = true) bool
rename(string $newname, bool $overwrite = true) File
delete() bool

common magic properties of Directory and File

property type description
$path string the full path to the resource

additional magic properties of File

property type description
$name string the basename of the file
$directory Directory the Directory which contains the file