Skip to content
This repository has been archived by the owner on May 17, 2024. It is now read-only.
/ ama-handle Public archive

A basic library for make coding easy from AMA

License

Notifications You must be signed in to change notification settings

irmmr/ama-handle

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

60 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

packagist license php version support stable version

What is ama-handle?

A library with which you can use a series of ready-made functions and classes to make your coding task easier. This handle uses different packages and classes.

Install

You can use Composer to install this library. If you want to use this library, it is better to always use the latest version or stable versions.

composer require irmmr/handle
{
    "require": {
        "irmmr/handle": "^1.1.5"
    }
}

Error reporting

You can manage errors that occur in the handle, but note that this only includes errors that have already been specified. This section contains two items, but you only need to specify a listener.

use Irmmr\Handle\App\Err;

// listen database errors
Err::listen(ERROR_TYPE, function ($error) {
    if (is_null($error)) return;
    echo $error->getMessage();
});

The error type is Irmmr\Handle\App\Exception\Main, which is a instance of \Exception.

Use

If you are ready to use the library, you can use all the classes in folder /src. There are no restrictions on the use of these items and they are constantly updated.

  • Working with data
use Irmmr\Handle\Data as D;

// Remove from string . return: Homan!
echo D::remove()->str('Hello man!', 'e', 'l', ' ');

// Remove from string. return: Homan!
echo D::remove()->strFormat('Hello man!', '/[el ]/');
  • Working with import
use Irmmr\Handle\Package as Pack;
use Irmmr\Handle\Data;

// example import with require
// `import` scans all php files in `my-dir`
Pack::import('test.php', 'file.php', 'my-dir')
    ->base(__DIR__)->do();

// block some files
Pack::import('one-dir')
    ->base(__DIR__, 'include')
    ->filter(function ($file) {
        return !Data::check()->includes($file, '/vendor/');
    })->do();
  • Working with method
use Irmmr\Handle\Method;

// get method type
echo Method::type();

// check method type
if (Method::isType(Method::GET)) {
    echo 'It\'s GET.';
}

// check and get a sample GET method
if (Method::get()->has('page')) {
    $page = Method::get()->get('page');
} else {
    $page = 1;
}

// or
$page = Method::get()->get('page') ?? 1;

// or with default value
$page = Method::get()->get('page', 1);
  • Working with file
use Irmmr\Handle\Filer as F;

// get file size
echo F::file()->size('path.txt');

// make dir
F::dir()->make('my-dir');
  • Extract files from dirs
use Irmmr\Handle\Filer;

// extract all php and html files example (return array)
$files = Filer::extract('.')    // path
    ->base(__DIR__)             // main directory
    ->loop()                    // enable loop dirs
    ->extensions('php', 'html') // set valid extensions
    ->get();

// extract some folders of project
$files = Filer::extract('*.json', 'src', 'other-dir')
    ->base(__DIR__, 'vendor')
    ->loop()
    ->extensions('json')
    ->get();

And other items that will be added later.

About

A basic library for make coding easy from AMA

Topics

Resources

License

Stars

Watchers

Forks

Languages