The IBT PHP Library (IPL) is a PHP library like
no other. IPL combines the power of an enhanced function library with a
structured web model to create a sort of living library. This
functionality allows developers to focus more intently on their code.
IBT PHP Library
About the IPL
The IBT PHP Library (IPL) is a PHP library like no other. IPL combines
the power of an enhanced function library with a structured web model to
create a sort of living library. This functionality allows developers to
focus more intently on their code and less intently on their design.
That is not to say that the design capability is any greater or worse
than if you don't use the library, but the functionality of the IPL as a
whole separates design from code from content while continuing to allow a
smooth transition between all three parts. This is the strength of the IPL.
Features
Shell Design
The IPL has a unique ability to separate code from content from
design in a very modular and efficient fashion. This functionality is
created by providing the programmer with a shell in which to work. This
shell is brought together at runtime by the IPL itself, and all of the
parts of the IPL are processed in a smooth and orderly fashon. This helps
set the IPL apart from most other PHP libraries.
Modular Design and Dot-Syntax
All classes and actions are now well structured. By making use of a dot-syntax,
similar to the way that Java handles imports and instanciations, you can now
import and instanciate classes and actions that are a part of the library. A
new directory structure and logical directory assignments now make the library
easier than ever to navigate.
Custom Displays
You decide how your pages are processed and what module layers to access
in what order. Your display procedure is your own.
Internal Functionality
Internal functionality is what brings the IPL together when the programmer's
work is complete. The IPL uses internal processing to combine and process
all of the layers of the IPL layered processing methodology and quickly deliver
a final product at runtime.
Layered Processing
The IPL processes pages based on a layered processing methodology. The library
makes use of multiple process layers. The following order is the default processing
order:
- Global Preprocessing
- Local Preprocessing
- Page Preprocessing
- Error Processing
- Notice Processing
- Content Processing
- Shell Processing and Display
- Content Display
Dynamic Content Switching
Switch display content dynamically during logic processing.
Dynamic SSL Switching
Switch Secure Socket Layers on and off dynamically or via external queries to
the IPL. (under development and testing)
Action Scripts
Action scripts are PHP documents that work with one or more library class, but
are, themselves, included into another layer.
Workflow Engine
Steps are currently being taken to integrate a third party workflow engine into
the library. The original workflow engine has been removed from the IPL to
prepare room.
Simple Configuration
Configuration of the IPL is fast and easy. There are multiple configuration
classes for the library that can be modified. Steps are being taken to convert
these configuration files to an XML format. The IPL is also out-of-the-box
operational.
Database Access
Database access is greatly simplified through the use of the Database class.
Data Manipulation
Easily manipulate data types, compact, decompact, encode, and decode data with
the DataManip class.
Email Processing
Create and send complex or simple emails through use of the Email class.
Error Processing
It is easy to send errors and notices to the IPL or process them yourself.
Graphing
Graphing is now easier than ever with the latest graphing class. Dynamically
generate charts and graphs based on any dataset.
Header Manipulation
Manipulate or read page headers to modify content types, site information,
create forward scripts, and more.
INI File Manipulation
Manipulate or read INI configuration files.
LDAP Directory Access
Authenticate against LDAP directory servers.
System Information Access
Pass queries to the IPL or use a built in class to retrieve basic system and
version information.
|