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