Index: mapserver/mapscript/php/php_mapscript_util.c
===================================================================
--- mapserver.orig/mapscript/php/php_mapscript_util.c	2012-03-05 15:05:16.000000000 +0100
+++ mapserver/mapscript/php/php_mapscript_util.c	2012-03-05 15:36:06.000000000 +0100
@@ -37,12 +37,18 @@
                                        void (*zend_objects_free_object) TSRMLS_DC)
 {
     zend_object_value retval;
+#if PHP_VERSION_ID < 50399
     zval *temp;
+#endif
     
     zobj->ce = ce;
     ALLOC_HASHTABLE(zobj->properties);
     zend_hash_init(zobj->properties, 0, NULL, ZVAL_PTR_DTOR, 0);
+#if PHP_VERSION_ID < 50399
     zend_hash_copy(zobj->properties, &ce->default_properties, (copy_ctor_func_t) zval_add_ref,(void *) &temp, sizeof(zval *));
+#else
+    object_properties_init(zobj, ce);
+#endif
     retval.handle = zend_objects_store_put(zobj, NULL, (zend_objects_free_object_storage_t)zend_objects_free_object, NULL TSRMLS_CC);
     retval.handlers = &mapscript_std_object_handlers;
     return retval;
@@ -54,12 +60,18 @@
                                           zend_object_handlers *object_handlers TSRMLS_DC)
 {
     zend_object_value retval;
+#if PHP_VERSION_ID < 50399
     zval *temp;
+#endif
     
     zobj->ce = ce;
     ALLOC_HASHTABLE(zobj->properties);
     zend_hash_init(zobj->properties, 0, NULL, ZVAL_PTR_DTOR, 0);
+#if PHP_VERSION_ID < 50399
     zend_hash_copy(zobj->properties, &ce->default_properties, (copy_ctor_func_t) zval_add_ref,(void *) &temp, sizeof(zval *));
+#else
+    object_properties_init(zobj, ce);
+#endif
     retval.handle = zend_objects_store_put(zobj, NULL, (zend_objects_free_object_storage_t)zend_objects_free_object, NULL TSRMLS_CC);
     retval.handlers = object_handlers;
     return retval;
Index: mapserver/mapscript/php/image.c
===================================================================
--- mapserver.orig/mapscript/php/image.c	2012-03-05 15:05:16.000000000 +0100
+++ mapserver/mapscript/php/image.c	2012-03-05 15:36:06.000000000 +0100
@@ -303,7 +303,7 @@
     /* no filename - read stdout */
 
     /* if there is no output buffer active, set the header */
-    if (OG(ob_nesting_level)<=0)
+    if (php_output_get_level()<=0)
     {
         php_header(TSRMLS_C);
     }
Index: mapserver/mapscript/php/php_mapscript.c
===================================================================
--- mapserver.orig/mapscript/php/php_mapscript.c	2011-12-23 11:16:03.000000000 +0100
+++ mapserver/mapscript/php/php_mapscript.c	2012-03-05 15:41:11.000000000 +0100
@@ -899,7 +899,7 @@
 
 }
 
-function_entry mapscript_functions[] = {
+zend_function_entry mapscript_functions[] = {
     PHP_FE(ms_GetVersion, NULL)
     PHP_FE(ms_GetVersionInt,  NULL)
     PHP_FE(ms_newLineObj, NULL)
