PHPackages                             einstein/environmentalist - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. einstein/environmentalist

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

einstein/environmentalist
=========================

Cleans up your environment by managing include paths, error handlers, and autoloading

0.0.1(12y ago)221[2 issues](https://github.com/einstein/environmentalist/issues)MITPHPPHP &gt;= 5.3.0

Since Jun 27Pushed 12y agoCompare

[ Source](https://github.com/einstein/environmentalist)[ Packagist](https://packagist.org/packages/einstein/environmentalist)[ Docs](https://github.com/einstein/environmentalist)[ RSS](/packages/einstein-environmentalist/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (2)Used By (0)

Environmentalist
================

[](#environmentalist)

Cleans up your PHP environment by managing include paths, error handlers, and autoloading

Installation
------------

[](#installation)

If you're using `composer` simply add the `einstein/environmentalist` dependency to your `composer.json` file.

Otherwise you can manually install it by cloning the repository somewhere in your php `include_path`.

```
git clone git@github.com:einstein/environmentalist.git`
require 'environmentalist/environmentalist.php';

```

Usage
-----

[](#usage)

### Enabling/disabling

[](#enablingdisabling)

`Environmentalist::enable()` is called when loaded. If you'd like to disable its behavior, simply call `Environmentalist::disable()`.

### Autoload extensions

[](#autoload-extensions)

```
Environmentalist::autoload_extensions()
Environmentalist::append_autoload_extension($extension)
Environmentalist::prepend_autoload_extension($extension)
Environmentalist::set_autoload_extensions($extensions)

```

### Error handlers

[](#error-handlers)

```
Environmentalist::error_handlers()
Environmentalist::append_error_handler($handler)
Environmentalist::prepend_error_handler($handler)
Environmentalist::set_error_handlers($handlers)

```

### Include paths

[](#include-paths)

```
Environmentalist::include_paths()
Environmentalist::append_include_path($path)
Environmentalist::prepend_include_path($path)
Environmentalist::set_include_paths($paths)

```

Testing
-------

[](#testing)

`Environmentalist` tests require [jaz303/ztest](http://github.com/jaz303/ztest)

Simply download it to `environmentalist/test/ztest` (or anywhere else in your PHP `include_path`), then run `test/run`

Todo
----

[](#todo)

- Update README documentation
- Allow other filename naming conventions to be registered
- Standardize the return values of the set\_\* methods
- Update tests

###  Health Score

18

—

LowBetter than 8% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity48

Maturing project, gaining track record

 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

Unknown

Total

1

Last Release

4706d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/9489f8e5ddf55b53780ff49cdd0d1a04b4f8d2530a1495d0edda265fa2b44c16?d=identicon)[shuber](/maintainers/shuber)

---

Top Contributors

[![shuber](https://avatars.githubusercontent.com/u/2419?v=4)](https://github.com/shuber "shuber (11 commits)")

---

Tags

autoloadingerror handlersexception handlersinclude paths

### Embed Badge

![Health badge](/badges/einstein-environmentalist/health.svg)

```
[![Health](https://phpackages.com/badges/einstein-environmentalist/health.svg)](https://phpackages.com/packages/einstein-environmentalist)
```

###  Alternatives

[shipmonk/name-collision-detector

Simple tool to find ambiguous classes or any other name duplicates within your project.

362.1M35](/packages/shipmonk-name-collision-detector)[digitaldream/laravel-seo-tools

Laravel Seo package for Content writer/admin/web master who do not know programming but want to edit/update SEO tags from dashboard

1558.4k](/packages/digitaldream-laravel-seo-tools)[webarchitect609/bitrix-neverinclude

Automatic Bitrix modules loader helps you to forget about CModule::IncludeModule and Loader::includeModule.

1115.1k](/packages/webarchitect609-bitrix-neverinclude)

PHPackages © 2026

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