{"id":15296397,"url":"https://github.com/schwabnicolas/configmgr","last_synced_at":"2026-01-04T23:51:20.516Z","repository":{"id":57028977,"uuid":"288945291","full_name":"SchwabNicolas/ConfigMGR","owner":"SchwabNicolas","description":"A PHP configuration manager.","archived":false,"fork":false,"pushed_at":"2020-10-01T12:33:53.000Z","size":49,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-25T05:43:43.669Z","etag":null,"topics":["configuration","configuration-files","configuration-management","php","php74","web"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SchwabNicolas.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-08-20T08:05:52.000Z","updated_at":"2022-06-14T04:04:10.000Z","dependencies_parsed_at":"2022-08-23T16:20:46.229Z","dependency_job_id":null,"html_url":"https://github.com/SchwabNicolas/ConfigMGR","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchwabNicolas%2FConfigMGR","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchwabNicolas%2FConfigMGR/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchwabNicolas%2FConfigMGR/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SchwabNicolas%2FConfigMGR/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SchwabNicolas","download_url":"https://codeload.github.com/SchwabNicolas/ConfigMGR/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245407755,"owners_count":20610232,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","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":["configuration","configuration-files","configuration-management","php","php74","web"],"created_at":"2024-09-30T18:10:21.839Z","updated_at":"2026-01-04T23:51:20.489Z","avatar_url":"https://github.com/SchwabNicolas.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ConfigMGR\nConfigMGR is a Configuration Manager for PHP. It is meant to remove all these old ``config.php`` files in a simple and efficient way.\n\n## Install with Composer\nYou can install this library with [Composer](https://getcomposer.org).\n```\ncomposer require nschwab/configmgr \n```\n\n## Simple example\nYou can find a simple example in the ``/example/`` directory.\n\n## String interpolation\nString interpolation is possible within your config file. By using curly brackets \"{ }\", you can specify any variable or constants defined in your config. It will look for constants defined by the system before checking for configuration keys.\n### Example\n```json\n{\n    \"constants\": {\n      \"DB_NAME\": \"testDb\",\n      \"SQL_USER\": \"root\",\n      \"SQL_HOST\": \"localhost\",\n      \"SQL_PASSWORD\": \"123456\",\n      \"CONNECTION_STRING\": \"Server={SQL_HOST}; Database={DB_NAME}; User Id={SQL_USER}; Password={SQL_PASSWORD}\",\n      \"VERSION\": \"v1.7.3-alpha {PHP_VERSION}\"\n    }\n}\n```\n\n## Features\n- [x] Loading configuration from JSON\n- [x] Creating variables from configuration\n- [x] Defining constants from configuration\n- [x] Format content of a configuration key with another\n- [x] Format content of multiple configuration keys with another\n- [x] Composer package\n- [x] Search to format content with already defined constants\n- [x] Custom markup\n- [x] Crawl recursively through tables to format content with configuration keys\n- [x] Crawl recursively through objects to format content with configuration keys\n- [ ] Load tables from CSV\n- [ ] Load objects from JSON\n- [ ] Monolog integration\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschwabnicolas%2Fconfigmgr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fschwabnicolas%2Fconfigmgr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fschwabnicolas%2Fconfigmgr/lists"}