irmmr/handle

此包已被废弃,不再维护。未建议替代包。

一个用于从AMA轻松编码的基本库

V1.1.7 2022-04-05 20:41 UTC

This package is auto-updated.

Last update: 2024-06-06 01:34:41 UTC


README

packagist license php version support stable version

什么是ama-handle?

一个库,你可以使用一系列现成的函数和类来简化编码任务。此handle使用不同的包和类。

安装

你可以使用 Composer 来安装此库。如果你想使用此库,最好总是使用最新版本或稳定版本。

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

错误报告

你可以管理handle中出现的错误,但请注意,这仅包括已指定的错误。本节包含两项内容,但你只需指定一个监听器。

use Irmmr\Handle\App\Err;

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

错误类型是 Irmmr\Handle\App\Exception\Main,它是 \Exception 的一个实例。

使用

如果你准备好使用此库,你可以使用 /src 文件夹中的所有类。对这些项目的使用没有限制,并且它们会不断更新。

  • 数据处理
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 ]/');
  • 导入处理
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();
  • 方法处理
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);
  • 文件处理
use Irmmr\Handle\Filer as F;

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

// make dir
F::dir()->make('my-dir');
  • 从目录中提取文件
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();

以及其他将来会添加的项目。