PHP Bridge

## Summary

PHP Bridge Overview

- Designed to run existing PHP applications inside the portal
- Minimal re-coding of the required depends on the application.
- Uses PHP Java API to execute PHP and rewrites output HTML.
- Installation of PHP libraries in LD_LIBRARY_PATH
- Major differences between versions (see below)
- Relative URL's are converted to Portlet Actions.
- Invocation from other portlets pass parameters as a session object.

Communication

- Portlet sees Parameters posted to itself (JSR-168 restriction)
- Invokation from another portlet through a session object.
- ScriptRuntimeData class can be used to pass parameters to a PHP /Perl portlet
- Portlets process query arguments (GET) and Parameters (POST)

## Differences between PHP4 and PHP5

PHP 4

- Included Java API and a servlet example which the portlet was based on.
- Just make sure that the Java API is configured
- Build php portlet using the using the PHP JNI headers
- Make sure that the PHP libraries are in the path for tomcat.
- The php-portlet jar is in the class path
- Well performing, stable

PHP 5

- Java API was dropped from PHP distribution.
- Updated Java API only available in CVS repository of EXT
- Compiling Java API and php 4 based portlet code works
- Running PHP4 application run fine.
- Using any new OO features in PHP 5 crash VM
- Java API unstable need major effort to resolve memory issues