Skip to content
This repository has been archived by the owner on Aug 14, 2022. It is now read-only.
/ php-file Public archive

PHP library for file and directory management.

License

Notifications You must be signed in to change notification settings

josantonius/php-file

Repository files navigation

PHP File library

Latest Stable Version License

Versión en español

PHP library for file management.



Requirements

This library is supported by PHP versions 5.6 or higher and is compatible with HHVM versions 3.0 or higher.

Installation

The preferred way to install this extension is through Composer.

To install PHP File library, simply:

composer require Josantonius/File

The previous command will only install the necessary files, if you prefer to download the entire source code you can use:

composer require Josantonius/File --prefer-source

You can also clone the complete repository with Git:

$ git clone https://github.com/Josantonius/PHP-File.git

Or install it manually:

Download File.php:

wget https://raw.githubusercontent.com/Josantonius/PHP-File/master/src/File.php

Available Methods

Available methods in this library:

- Check if a file exists in a path or url

File::exists($file);
Attribute Description Type Required Default
$file Path or file url. string Yes

# Return (boolean)

- Delete file if exists

File::delete($file);
Attribute Description Type Required Default
$file File path. string Yes

# Return (boolean)

- Create directory if not exists

File::createDir($path);
Attribute Description Type Required Default
$path Path where to create directory. string Yes

# Return (boolean)

- Copy directory recursively

File::copyDirRecursively($from, $to);
Attribute Description Type Required Default
$from Path from copy. string Yes
$to Path to copy. string Yes

# Return (boolean)

- Delete empty directory

File::deleteEmptyDir($path);
Attribute Description Type Required Default
$path Path to delete. string Yes

# Return (boolean)

- Delete directory recursively

File::deleteDirRecursively($path);
Attribute Description Type Required Default
$path Path to delete. string Yes

# Return (boolean)

- Get files from directory

File::getFilesFromDir($path);
Attribute Description Type Required Default
$path Path where get file paths. string Yes

# Return (boolean)

Quick Start

To use this library with Composer:

require __DIR__ . '/vendor/autoload.php';

use Josantonius\File\File;

Or If you installed it manually, use it:

require_once __DIR__ . '/File.php';

use Josantonius\File\File;

Usage

Example of use for this library:

- Check if a local file exists

File::exists('path/to/file.php');

- Check if a external file exists

File::exists('https://raw.githubusercontent.com/Josantonius/PHP-File/master/composer.json');

- Delete a local file

File::delete(__DIR__ . '/test.txt');

- Create directory

File::createDir(__DIR__ . '/test/');

- Delete empty directory

File::deleteEmptyDir(__DIR__ . '/test/');

- Delete directory recursively

File::deleteDirRecursively(__DIR__ . '/test/');

- Copy directory recursively

File::copyDirRecursively(__DIR__ . '/test/', __DIR__ . '/copy/');

- Get file paths from directory

get_class(File::getFilesFromDir(__DIR__));

Tests

To run tests you just need composer and to execute the following:

git clone https://github.com/Josantonius/PHP-File.git

cd PHP-File

composer install

Run unit tests with PHPUnit:

composer phpunit

Run PSR2 code standard tests with PHPCS:

composer phpcs

Run PHP Mess Detector tests to detect inconsistencies in code style:

composer phpmd

Run all previous tests:

composer tests

License

This repository is licensed under the MIT License.

Copyright © 2017 - 2022, Josantonius