Carthag is an enteprise level applications platform written in PHP 5, making full use of the new language features. Being distributed with the Mozilla Public License, Carthag is free to use and distribute and can be used in commercial products.
Carthag’s main purpose is to bring PHP at the Enterprise level. This is achieved by using new PHP 5 OOP features, adopting Design Patterns and bringing some other platforms ideas (in particular Java) to Carthag.
Differently from other PHP based platforms, Carthag is designed to be used in all types of applications, even client ones, and not only as a web scripting system.
- Entirely OOP
- Rigorous code organization (like Java)
Language and base packages
- Bootstrap system
- IO and files
- Classes serialization
- Data types
- Class loader and class autoload interceptor
- Support of threading/concurrent processes
- Server sockets
- Security manager
- Dom/Sax XML manipulation
- Utility packages
- Implementation of design patterns like Observer, Factory, DAO, etc.
- Singleton pattern implementation
- Command pattern interface
- Observer pattern implementation
- Database abstraction through Data Access
- DAO base
- Web services support (SOAP, UDDI, WSDL, XML-RPC)
Common application frameworks provided
- Logging system based on log4j
- Authentication and authorization
- Unit testing