Home
Welcome to the documentation page of the Adventure-PHP-Framework. On this website
you are provided with the latest documentation of the API of the framework. Moreover, you can access
a great number of examples and tutorials dealing with object orientated software design an
development with the aid of the Adventure-PHP-Framework. It is recommended to read the documentation
in the given order. Thus your study will be highly efficient. The code of the framework is
licensed under LGPL v3 and can be used or extended freely. Changes, improvements or add-ons should be
commited back to the community, that your work can be integrated into the framework.
Version 1.9 (stable) released!

Today we are proud to announce the availability of the release 1.9 (stable). This production release
contains:
Usermanagement:
The usermanagement module was subjected to refactoring within the 1.9 series.
This means:
- More easy inclusion into existing applications via taglib.
- Business component as a central interface to the module.
-
Enhanced
documentation
with many examples.
-
Direct usage of the user management database through the
GenericORMapper.
Concerning these changes and by force of the circumstance, that is is built on top of the
GenericORMapper, it can be uses as a reusable and multitenant user base for use within various
applications.
Filter!
The filter issue was completely changed for the 1.9 series. The advantages of the new implementation
are:
Remake of approved components:
In the course of refactoring placed in the 1.8 branch, several components were reworked to meet
the extended needs. These are:
-
ImageManager: Refactoring eases usage of the class and provides a more
convenient API.
-
Pager: Refactoring, that it can be used to page result sets loaded by the
GenericORMapper. The new
session caching facility gains performance of the module.
Global error and exception handling!
The error handling of the framework is now arranged in a more flexible way. This means:
-
The component, that is used by the framework to handle upcomming errors can now be configured
by use of the registry. You can, too, define your
own error handler, if necessaray.
-
Additionally, the PHP 5 release now contains a seperate
exception handling.
The mechnism is similar to the error handling included in the framework.
This mechanism enables the developer to catch unhandled exceptions within an application. The
documentation now provides extensive information on the functionality, the extension and the
configuration of this feature.
Cleanup!
As mentioned in the changelog of the 1.8 release, deprecated components have been removed. These
are:
- filesystemHandler
- abstractCacheManager
- cacheV4Manager
- objectCacheManager
- statCacheManager
- bbCodeParser
The article
Migration from 1.8 to 1.9
contains extended release notes as well as hints on the migration to the new framework version.
Feedback to the Release Candidate:
The stable release contains bugfixes of the baseControllers, taken from the user feedback.
Further, the image delivery actions were optimized. Beneath, the documentation was enhanced and
a new code highlighting tool was introduced.
-
The methods __getForm(), __templatePlaceholderExists(),
__placeholderExists(), __getTemplate(), and
setPlaceHolder() do no longer create errors on neighbour object access in
the PHP5 release version.
-
The StreamMediaAction out of the tools::media::actions namespace
and the ShowImageAction out of the modules::socialbookmark::biz::actions
namespace now send an enhanced set of HTTP headers, that enable the browser so cache the
images.
Details on the topics presented, can be read about in the chanelog on the
downloads page. There, you
can also find hints on the discussions on the 1.9-RC1 release within the forum.
Download now!
Please report bugs in the forum under
http://forum.adventure-php-fra...um.php?f=9. To
discuss suggestions or feature requests, please refer to
http://forum.adventure-php-fra...um.php?f=7.
All release packages can be found on the
downloads page.
Performance-Check: Yii vs. APF (and CakePHP)

The article Yii. vs APF re-performs the RPS performance test from
http://www.yiiframework.com/performance and compares the canditates CakePHP,
Yii framework and adventure php framework. The result: the APF passes the Yii test!
The detailed article including the test scenario and the interpretation of the resuls can be read
about here.
Why APF?

You think: "The APF is just another framework", too? On
this page you can find reasons why
you should definitely use use the adventure php framework (APF)!
This is the short, but complete answer: The APF supports you to rapidly create
enterprise ready web applicatons or modules, that are fast, secure and reusable. The framework
threrefore includes approved development tools to solve standard problems and implement pattern
related applications.
Version 1.8 (stable) released!

Today we are proud to announce the availability of the release 1.8 (stable). This production
release contains:
New license!
In ordner to enable enterprise users to apply the framework for their closed soure or own license
products, the framework now is released under the LGPL v3. The new license
agreement is in force since release 1.8-RC1.
Additional productivity tools:
To gain productivity and ease development, this release was focused on additional tools. These are:
-
AdvancedLogger: for advanced logging tasks.
-
<core:appendnode />: makes template fragments (forms, ...) reusable
within any other templates.
-
<*:mediastream />: can deliver GUI elements directly from the application's
namespace (eases module packaging!).
-
eZ-Style templates: allows template translation as known in the eZ component
library using special language tags and xml translation files.
Further productivity tools can be found in the
special taglibs
chapter.
Remake of proven components:
In the course of refactoring placed in the 1.8 branch, several components were reworked to meet
the extended needs. Thanks to the new concepts, usage and extension is much more easier than in
the past. The following list shows the most important examples:
-
FilesystemManager: unnecessary dependencies were removed and the methods were
reviewed to fit the requirements in a better way.
-
AdvancedBBCodeParser: the introduction of the provider concept (combination
of facade and composite pattern) clearly improved extensibility and configuration. Nevertheless,
the most important provider are containend in the release!
-
<html:template />: because of the refactoring, enhancement is much more
intuitively using the <template:addtaglib /> tag.
-
CacheManager: the cache manager was rewritten using the provider concept as
well. Additionally, the caching backends were upgraded and extended. Now, memcache
and database can be used to store cache items.
Ease the daily work!
The adventure php framework (APF) is focused on providing solutions, that fix daily life problems,
gain productivity of your developers and raise quality of your applications. The enhancements
contained within this release support these goals any more better:
- Better debugging (Document::__loadContentFromFile())
- Better benchmark ids
- Better protection on SQL injections in the MySQLHandler
- Availability of the current URL within the Registry
Bugfixes:
The new release also contains important bugfixes:
- The init() method of the MySQLxHandler didn't activate the debug mode properly.
- Calling MySQLHandler::escapeValue() led to an error because the database connection was not yet initialized.
- html_taglib_form::__createFormElement() now initializes dynamic form elements correctly.
- The captcha url is now generated free of error.
Feedback to the Release Candidate:
The stable release contains bugfixes of the GenericORMapper included in the release candidate
feedback:
- The GenericORMapper now saves objects only, when attributes are changed.
- The __getAssociationsByObjectName() method only returns relevant associations.
Details on the topics presented, can be read about in the chanelog on the
downloads page. There, you
can also find hints on the discussions on the 1.7 release within the forum.
Download now!
Please report bugs in the forum under
http://forum.adventure-php-fra...um.php?f=9. To
discuss suggestions or feature requests, please refer to
http://forum.adventure-php-fra...um.php?f=7.
All release packages can be found on the
downloads page.
Version 1.7 (stable) released!

Today we are proud to announce the availability of the release 1.7 (stable). This production
release contains
-
"zero configuration":
Because of the introduction of the registry and a new initialization process,
complex configuration (INIT files) is history and the adaption of the core parameters
is much more easier.
-
SPAM protection:
Since release 1.7-RC2, the captcha module was added. This module is already
included in the guestbook to avoid SPAM posts. It provides an easy and flexible way to
protect forms from SPAM. For further details on the usage of the taglib, please refer
to the
CAPTCHA taglib
documentation section.
-
Generic OR Mapper / usermanagement:
The genericormapper OR mapper component is intended to store, load
and manipulate objects from a relational database. The documentation of this beta component
can be seen on the german documentation page under
Generischer OR-Mapper.
The usermanagement module is based on the generic OR mapper and includes
a universal user, group and role management. This module is beta, too. The documentation
is currently created, but not available online yet.
-
Enhanced form taglib functions:
The class html_taglib_form was added the methods
- addFormContentBeforeMarker()
- addFormContentAfterMarker()
- addFormElementBeforeMarker()
- addFormElementAfterMarker()
These functions enable you, to dynamically create forms in a comfortable way. Due to the
integration into the existing form taglib you are not forced to relinquish to the built-in
form taglib functionalities. The
dynamic forms chapter
describes the possibilities you now have to create dynamic forms now. A dedicated application
is included, too
-
Bugfixes and expansions:
This release contains about 20 bugfixes and enhancements to the framework
code. Please have a look at the full sized change log on the
downloads page to get the details.
Migrate now!
Migration to version 1.7 is described step by step under
Migration from version 1.6 to 1.7.
Download now!
Please report bugs in the forum under
http://forum.adventure-php-fra...um.php?f=9. To
discuss suggestions or feature requests, please refer to
http://forum.adventure-php-fra...um.php?f=7.
All release packages can be found on the
downloads page.
New beta documentation page available now!
|
Today we are proud to announce the availability of the new apf documentation page under
en.adventure-php-framework.org.
The beta site contains the following improvements:
- Completely new design
- Improved navigation
- Rewritten or updated documentation
- Improved clarity over the documentation and tutorial rssources
- Better search
- Hint of the week containing hints on implementation issues
- Overview of the current forum posts and documentation notes
- Enhanced introduction material
- Improved literature listing
The webpage already contains all technical changes. In the next 3 weeks, the design and the
content will be improved continuously. The APF team is looking forward to your feedback!
For this reason, a new forum thread has been opened under
http://forum.adventure-php-fra...p?f=4&t=17!
|
Version 1.6 (final) released!
|
Today we are proud to announce the availability of the release 1.6 (final). The release
contains
-
New functions:
(connectionManager, SessionSingleton, SQLite-Treiber, ...)
-
Improved functions:
(serviceManager, TransformOnPlace feature for html:template and
html:form, API extension for the form taglibs, ...)
-
Better performance:
(Optimization of the import() function, ...)
-
Enhanced documentation:
(Templates, forms, tutorial "Erweiterung bestehender Funktionen" (german), article
"Hacking & das APF" (german), ...)
-
Completely reworked API documentation
|
Download now!
Please report bugs in the forum under
http://forum.adventure-php-fra...um.php?f=9. To
discuss suggestions or feature requests, please refer to
http://forum.adventure-php-fra...um.php?f=7.
All release packages can be found on the
downloads page.
|
Your first steps with the adventure php framework!
AJAX and the adventure php framework?
The article
AJAX & the adventure php framework shows you, how
AJAX applications can be embedded into your common application architecture, which problems occure
during implementation and how the adventure php framework helps you to implement standardizes AJAX
applications. The last chapter presents useful hints and some questions, that have to answered.
Please add YOUR comment!
What ist the adventure php framework?
The adventure php framework understands itself as a utility to implement object oriented and generic
PHP web applications. It supports the developer to create programms in compliance with approved
software design pattern and the code base already has answers to many everyday problems.
The framework cannot be described as an application, that only has to be configured, but rather as
a technical basis and design guide for the design of software.
Note!
Not every page is translated into english language at the moment. Please consider that the sites
will be translated completely until january 2008. Nevertheless we are proud to anounce that all
pages under the documentation section are now translated. The tutorial section is currently in
progress.
The following tutorials are already translated:
- User specific taglibs
- My first website
- Comment function
- Contact form
What is the performance of the Adventure-PHP-Framework?
Since today (25th of Oct 2007) the article Tests on PHP Frameworks
(german only) is online. It compares different frameworks available and shows the key features and
benefits and gives some advice to help to make a decision for specific product. But the article
should not only be seen as a comparison but also as a resource for code snippets or implementation
hints.
|