我用的是虚拟机linux fedora10     php版本5.2.6
大致情况如下:
有C++生成的.so库和头文件(例如 libapp.so和application.h等多个头文件),
包含一个sendMessage()函数,利用php模块C++扩展来调用libapp.so.编译生成一个.so库供php页面调用。部分代码如下:
[ext]#./ext_skel --extname=devapp[devapp]#vim config.m4
打开第16行和第18行,在最后加PHP_REQUIRE_CXX() 
PHP_NEW_EXTENSION(devapp,devapp.c, $ext_shared)
修改 devapp.c为devapp.cpp  [devapp]#phpize[devapp]#vim php_devapp.h
加入函数声明PHP_FUNCTION(sendMessage);[devapp]#mv devapp.c devapp.cpp
[devapp]#vim devapp.cpp
extern "C"{
#include "php.h"  
#include "php_ini.h"  
#include "ext/standard/info.h"
}
#include "/usr/local/lib/application.h"static function_entry hello_functions[] = {
    PHP_FE(sendMessage,NULL)
    {NULL, NULL, NULL}
};#ifdef COMPILE_DL_DEVAPP
BEGIN_EXTERN_C()
ZEND_GET_MODULE(DEVAPP)
END_EXTERN_C()
#endifPHP_FUNCTION(sendMessage)
{
...

Application app;
str=app.sendMessage(arg);
len=sppritf(&strg,0,"%s",str);
RETURN_STRINGL(strg,len,0)}[devapp]#./configure
[devapp]#make LDFLAGS=-lapp    // libapp.so 在/usr/lib下   编译通过
[devapp]#cp modules/devapp.so /usr/lib/php/modules在/var/www/html创建test.php<?php
dl("debapp.so");

echo sendMessage("123");

/*......*/   //其余代码被屏蔽掉
?>
我试过编译时直接make  不加载libapp.so,就不会出现刷新产生空白页面的情况。
C++模块扩展的实现代码已做过实验,可使用。本人也是初学,希望高手指点。