PHPackages                             fmihel/php-lib - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. fmihel/php-lib

ActiveLibrary

fmihel/php-lib
==============

php,lib,library

v6.0.0(1y ago)02.5k[1 issues](https://github.com/fmihel/php-lib/issues)[1 PRs](https://github.com/fmihel/php-lib/pulls)3MITPHPCI passing

Since Jan 21Pushed 3mo ago1 watchersCompare

[ Source](https://github.com/fmihel/php-lib)[ Packagist](https://packagist.org/packages/fmihel/php-lib)[ RSS](/packages/fmihel-php-lib/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (2)Versions (49)Used By (3)

php-lib v5
==========

[](#php-lib-v5)

`composer require fmihel/php-lib`

[1. Str - работа со строками](#Str)
[2. Common - разное](#Common)
[3. Dir - работа с файлами и каталогами](#Dir)
[3. Events - создание коллекций событий](#Events)
[4. Arr - работа с массивами](#Arr)
[5. Type - работа с типами](#Type)
[6. Url - работа с адресом](#Url)

---

Str
---

[](#str)

```
use fmihel\lib\Str;
```

### property

[](#property)

nameargsresultnotesrandom(count)stringслучайная строка длиной $count (начинается с буквы, всегда загланые буквы и цифры)countintкол-во символов на выходеtranslit(str,callback=null)stringтранслитирация для строки. заменятся только кирилические символы, для др символов можно задать спец ф-цию callback,которая должна вернуть значение для переданного символа
Ex: trasnlit('йцрувцр839wkjd');
Ex: trasnlit('path/путь','fmihel\\lib\\Str::TRANSLIT\_TO\_URL');
Ex: trasnlit('abcрусс',function($s){return '\*';});strstringстрока к транслитерацииcallback=nullfunction|nullф-ция для преобразования нетраслитирируемых символовmb\_trim(str)stringмультибайтная версия trimstrstringвходная строка---

Common
------

[](#common)

```
use fmihel\lib\Common;
```

### property

[](#property-1)

nameargsresultnotesget($var,$name1,$name2,...,$default)anyвозвращает значение свойства объекта, который может быть вложен в другой объект
 Ex: $var=\[A=&gt;\[B=&gt;\[73,43,89\]\]\];
 Common::get($var,'A','B',2,null) = 89$varobject || arrayпеременная содержащаяя объект или массив$name1,$name2..string || intимя свойства объетка или порядковый номер в массиве$defaultanyзначение, если в цепочке объектов не окажется объекта с именем или индексом $name---

Dir
---

[](#dir)

```
use fmihel\lib\Dir;
```

### property

[](#property-2)

methodargsnotesfiles(string $path,$exts = \[\], bool $full\_path = false, bool $only\_root = true): arrayсписок файловdirs(string $path,bool $full\_path = false, bool $only\_root = true): arrayсписок папокjoin(...$paths)объединить пути---

Events
------

[](#events)

```
use fmihel\lib\Events;
```

### property

[](#property-3)

methodargsresultnotes---

Arr
---

[](#arr)

```
use fmihel\lib\Arr;
```

### property

[](#property-4)

methodargsresultnotesis\_assoc($array)boolпризнак что массив является ассоциативнымfind($array,$callback)anyпоиск элемента в НЕ ассоциативном массиве, ВНИМАНИЕ! возвращает либо false (если ничего не найдено) либо \[ value \] (найденное значение как 0вой элемент массива)findIndex($array,$callback)intпоиск индекса элемента в НЕ ассоциативном массиве, если элемент не найден возвращает -1---

Type
----

[](#type)

```
use fmihel\lib\Type;
```

### property

[](#property-5)

methodargsresultnotes---

Url
---

[](#url)

```
use fmihel\lib\Url;
```

### property

[](#property-6)

methodresultnotesUrl::join(...$paths)stringСоединяет маршруты
Ex:
 Url::join('\\path\\','\\path2\\')
Url::join('http://', 'dir', 'file.txt')Url::build(string $url,array $attr=\[\])stringДобавляет атрибуты к адресу $url

###  Health Score

44

—

FairBetter than 92% of packages

Maintenance62

Regular maintenance activity

Popularity20

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity70

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~37 days

Recently: every ~47 days

Total

47

Last Release

559d ago

Major Versions

v1.7.0 → v2.0.02021-06-22

v2.3.1 → v3.0.02022-04-30

v3.8.0 → v4.0.02022-10-18

v4.1.0 → v5.x-dev2024-01-11

v5.2.2 → v6.0.02024-10-28

### Community

Maintainers

![](https://www.gravatar.com/avatar/fcda07512b04fb579a8f8d01eb78783255a65a7a90cc3d953bcf6b3a00bb3c40?d=identicon)[fmihel](/maintainers/fmihel)

---

Top Contributors

[![fmihel](https://avatars.githubusercontent.com/u/10561794?v=4)](https://github.com/fmihel "fmihel (36 commits)")

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/fmihel-php-lib/health.svg)

```
[![Health](https://phpackages.com/badges/fmihel-php-lib/health.svg)](https://phpackages.com/packages/fmihel-php-lib)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
