/file-system

simple file system library for PHP

Primary LanguagePHPMIT LicenseMIT

A simle file system classes

Latest Version on Packagist Software License Build Status Coverage Status Code Climate Total Downloads

Description

A simle file system classes

Feature

  • Simple file class(File)
  • File function facade class(FileFacade)

Usage

making a file

use stk2k\filesystem\FileSystem;

FileSystem::put('/path/to/file', 'Hello, World');

deleting a file

use stk2k\filesystem\FileSystem;

FileSystem::delete('/path/to/file');

getting file's content

use stk2k\filesystem\FileSystem;

// getting whole content as string
$ret = FileSystem::get('/path/to/file');
echo $ret;

// getting whole content as array
$ret = FileSystem::getAsArray('/path/to/file');
print_r($ret);

putting file's content

use stk2k\filesystem\File;
use stk2k\filesystem\FileSystem;

// putting string content
$ret = FileSystem::put('/path/to/file', 'Hello, World!');
echo $ret->get();       // Hello, World!

// putting array(of strings) content
$ret = FileSystem::put('/path/to/file', ['Foo', 'Bar']);
echo $ret->get();
// Foo
// Bar

// putting File object
file_put_contents('/path/to/file1', 'Hello, World!');
$ret = FileSystem::put('/path/to/file2', new File('/path/to/file1'));
echo $ret->get();       // Hello, World!

// putting object content(Stringable)
class MyStringableObject
{
    public function __toString() : string
    {
        return 'Hello, World!';
    }
}
$ret = FileSystem::put('/path/to/file', new MyStringableObject());
echo $ret->get();       // Hello, World!

file object

use stk2k\filesystem\File;

$ret = new File('/path/to/file');
echo $ret->get();

Requirement

PHP 7.2 or later

Installing stk2k/file-system

The recommended way to install stk2k/file-system is through Composer.

composer require stk2k/file-system

After installing, you need to require Composer's autoloader:

require 'vendor/autoload.php';

License

This library is licensed under the MIT license.

Author

stk2k

Disclaimer

This software is no warranty.

We are not responsible for any results caused by the use of this software.

Please use the responsibility of the your self.