{"id":37007330,"url":"https://github.com/miladrahimi/php-enum","last_synced_at":"2026-01-14T00:47:44.339Z","repository":{"id":62528803,"uuid":"148067986","full_name":"miladrahimi/php-enum","owner":"miladrahimi","description":"A PHP abstract enum class","archived":false,"fork":false,"pushed_at":"2022-08-10T06:39:32.000Z","size":18,"stargazers_count":11,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-11-14T05:19:53.426Z","etag":null,"topics":["enum","package","php"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/miladrahimi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2018-09-09T21:39:29.000Z","updated_at":"2024-11-11T11:20:50.000Z","dependencies_parsed_at":"2022-11-02T10:45:48.051Z","dependency_job_id":null,"html_url":"https://github.com/miladrahimi/php-enum","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/miladrahimi/php-enum","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miladrahimi%2Fphp-enum","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miladrahimi%2Fphp-enum/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miladrahimi%2Fphp-enum/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miladrahimi%2Fphp-enum/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/miladrahimi","download_url":"https://codeload.github.com/miladrahimi/php-enum/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/miladrahimi%2Fphp-enum/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28406605,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-13T21:51:37.118Z","status":"ssl_error","status_checked_at":"2026-01-13T21:45:14.585Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["enum","package","php"],"created_at":"2026-01-14T00:47:43.670Z","updated_at":"2026-01-14T00:47:44.332Z","avatar_url":"https://github.com/miladrahimi.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Latest Stable Version](https://poser.pugx.org/miladrahimi/php-enum/v/stable)](https://packagist.org/packages/miladrahimi/php-enum)\n[![Total Downloads](https://poser.pugx.org/miladrahimi/php-enum/downloads)](https://packagist.org/packages/miladrahimi/php-enum)\n[![Build Status](https://travis-ci.org/miladrahimi/php-enum.svg?branch=master)](https://travis-ci.org/miladrahimi/php-enum)\n[![Coverage Status](https://coveralls.io/repos/github/miladrahimi/php-enum/badge.svg?branch=master)](https://coveralls.io/github/miladrahimi/php-enum?branch=master)\n[![License](https://poser.pugx.org/miladrahimi/php-enum/license)](https://packagist.org/packages/miladrahimi/php-enum)\n\n# PHP-Enum\n\nTo make your Enums feel alive, just make them extend `Enum` abstract class!\n\n## Installation\n\nInstall [Composer](https://getcomposer.org) and run following command in your project's root directory:\n\n```\ncomposer require miladrahimi/php-enum \"1.*\"\n```\n\n## Documentation\n\nConsider this enum class:\n\n\n```php\nnamespace MiladRahimi\\Enum\\Enum;\n\nclass SampleEnum extends Enum\n{\n    const UNO = 1;\n    const ONE = 1;\n    const TWO = 2;\n    const STR = \"sth\";\n}\n```\n\nNow you are able to use this methods:\n\n```php\nSampleEnum::all(); // ['UNO' =\u003e 1, 'ONE' =\u003e 1, 'TWO' =\u003e 2, 'STR' =\u003e 'sth']\n\nSampleEnum::keys(); // ['UNO', 'ONE', 'TWO', 'STR'];\n\nSampleEnum::values(); // [1, 1, 2, 'sth']\n\nSampleEnum::hasKey('ONE'); // true\n\nSampleEnum::hasKey('xXx'); // false\n\nSampleEnum::hasValue(2); // true\n\nSampleEnum::hasValue('xXx'); // false\n\nSampleEnum::valueOf('ONE'); // 1\n\nSampleEnum::keysOf(1); // ['UNO', 'ONE']\n\nSampleEnum::keyOf(1); // 'UNO'\n\nSampleEnum::randomKey(); // One of 'UNO', 'ONE', 'TWO', 'STR'\n\nSampleEnum::randomKeyExceptKeys(['ONE', 'TWO']); // One of 'UNO', 'STR'\n\nSampleEnum::randomKeyExceptValues([SampleEnum::STR, SampleEnum::TWO]); // One of 'ONE', 'UNO'\n\nSampleEnum::randomValue(); // One of 1, 2, 'sth'\n\nSampleEnum::randomValueExceptValues([SampleEnum::STR, SampleEnum::TWO]); // One of SampleEnum::ONE, SampleEnum::UNO\n\nSampleEnum::randomValueExceptKeys(['STR', 'TWO']); // One of SampleEnum::ONE, SampleEnum::UNO\n```\n\n## License\nPHP-Enum is initially created by [Milad Rahimi](https://miladrahimi.com)\nand released under the [MIT License](http://opensource.org/licenses/mit-license.php).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiladrahimi%2Fphp-enum","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmiladrahimi%2Fphp-enum","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmiladrahimi%2Fphp-enum/lists"}