{"id":15028663,"url":"https://github.com/s-damian/solid-php","last_synced_at":"2026-03-15T08:23:47.214Z","repository":{"id":50454399,"uuid":"360466183","full_name":"s-damian/solid-php","owner":"s-damian","description":"SOLID PHP - Examples with PHP 8.3","archived":false,"fork":false,"pushed_at":"2024-11-23T09:12:11.000Z","size":54,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-13T04:29:14.782Z","etag":null,"topics":["dependency-inversion-principle","interface-segregation-principle","liskov-substitution-principle","open-closed-principle","php","php8","single-responsibility-principle","solid","solid-principles"],"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/s-damian.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-04-22T09:37:09.000Z","updated_at":"2024-11-23T09:12:15.000Z","dependencies_parsed_at":"2024-03-03T09:25:33.258Z","dependency_job_id":"89f5a6fb-ed53-4076-bd86-1b09030b0ad7","html_url":"https://github.com/s-damian/solid-php","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/s-damian/solid-php","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-damian%2Fsolid-php","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-damian%2Fsolid-php/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-damian%2Fsolid-php/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-damian%2Fsolid-php/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/s-damian","download_url":"https://codeload.github.com/s-damian/solid-php/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/s-damian%2Fsolid-php/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28050355,"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","status":"online","status_checked_at":"2025-12-26T02:00:06.189Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["dependency-inversion-principle","interface-segregation-principle","liskov-substitution-principle","open-closed-principle","php","php8","single-responsibility-principle","solid","solid-principles"],"created_at":"2024-09-24T20:08:50.555Z","updated_at":"2025-12-26T08:34:16.854Z","avatar_url":"https://github.com/s-damian.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SOLID - Examples with PHP 8\r\n\r\nHere there is an example of SOLID in PHP 8\r\n\r\n\r\n## Author\r\n\r\n[![PHP Developer](https://raw.githubusercontent.com/s-damian/medias/main/s-damian-logo-full-stack.webp)](https://github.com/s-damian)\r\n\r\n\r\n## SOLID\r\n\r\nS :\r\n**Single Responsibility Principle** - A class must have one and only one responsibility.\r\n\r\nO :\r\n**Open Closed Principle** - A class must be open to extension, but closed to modification.\r\n\r\nL :\r\n**Liskov Substitution Principle** - An instance of type T must be able to be replaced by an instance of type G, such as G subtype of T, without this modifying the consistency of the program.\r\n\r\nI :\r\n**Interface Segregation Principle** - Prefer several specific interfaces for each client rather than a single general interface.\r\n\r\nD :\r\n**Dependency Inversion Principle** - Depend on abstractions, not implementations.\r\n\r\n\r\n## Examples\r\n\r\n* [Single Responsibility Principle](https://github.com/s-damian/solid-php/tree/master/src/1_single-responsibility-principle)\r\n\r\n* [Open Closed Principle](https://github.com/s-damian/solid-php/tree/master/src/2_open-closed-principle)\r\n\r\n* [Liskov Substitution Principle](https://github.com/s-damian/solid-php/tree/master/src/3_liskov-substitution-principle)\r\n\r\n* [Interface Segregation Principle](https://github.com/s-damian/solid-php/tree/master/src/4_interface-segregation-principle)\r\n\r\n* [Dependency Inversion Principle](https://github.com/s-damian/solid-php/tree/master/src/5_dependency-inversion-principle)\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs-damian%2Fsolid-php","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fs-damian%2Fsolid-php","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fs-damian%2Fsolid-php/lists"}