Php 5.3 error

I just upgraded my php to version 5.3 running piwiki 0.4.1 on mysql 5.1.
Now all I get is this error:

The magic method __isset() must have public visibility and cannot be static
in ‘/var/www/html/piwik/libs/Zend/Config.php’ at the line 184

#0 Piwik_ErrorHandler(2, The magic method __isset() must have public visibility and cannot be static, /var/www/html/piwik/libs/Zend/Config.php, 184, Array ([class] => Piwik,[classPath] => Piwik,[i] => 0,[path] => /var/www/html/piwik/core/Piwik.php)) called at [/var/www/html/piwik/libs/Zend/Config/Ini.php:27]
#1 require_once() called at [/var/www/html/piwik/libs/Zend/Config/Ini.php:27]
#2 require_once(/var/www/html/piwik/libs/Zend/Config/Ini.php) called at [/var/www/html/piwik/core/Config.php:12]
#3 require_once(/var/www/html/piwik/core/Config.php) called at [/var/www/html/piwik/core/Piwik.php:12]
#4 require_once(/var/www/html/piwik/core/Piwik.php) called at [/var/www/html/piwik/core/Loader.php:45]
#5 Piwik_Loader::autoload(Piwik)
#6 spl_autoload_call(Piwik) called at [/var/www/html/piwik/core/FrontController.php:186]
#7 Piwik_FrontController->init() called at [/var/www/html/piwik/index.php:57]

any hints?

There are (so far) 3 patches either in svn and/trac to be committed.

tickets: 843, 844, 845

sorry, I wasn’t aware of the svn/trac
Tried a svn update to and applying the patch in ticket 845.
Got as far as successfully updating the database, but then it stops with.

Notice: Undefined index: ts_created in /var/www/html/piwik/core/Site.php on line 53

Patience. I just got php 5.3 installed on my box, alongside 5.2.6 and 5.2.10.

There’s another one on PHP 5.3

Function ereg() is deprecated
in ‘C:\apache2.2\htdocs\piwik\core\Piwik.php’ at the line 88

#0 Piwik_ErrorHandler(8192, Function ereg() is deprecated, C:\apache2.2\htdocs\piwik\core\Piwik.php, 88, Array ([directoriesToCheck] => Array ([0] => /tmp,[1] => /tmp/templates_c,[2] => /tmp/cache),[resultCheck] => Array (),[directoryToCheck] => /tmp))
#1 ereg() called at [C:\apache2.2\htdocs\piwik\core\Piwik.php:88]
#2 Piwik::checkDirectoriesWritable(Array ([0] => /tmp,[1] => /tmp/templates_c,[2] => /tmp/cache)) called at [C:\apache2.2\htdocs\piwik\core\Piwik.php:43]
#3 Piwik::checkDirectoriesWritableOrDie(Array ([0] => /tmp,[1] => /tmp/templates_c,[2] => /tmp/cache)) called at [C:\apache2.2\htdocs\piwik\core\FrontController.php:186]
#4 Piwik_FrontController->init() called at [C:\apache2.2\htdocs\piwik\index.php:54]

See here: (I’ve got lots to do as well for my scripts to get them 5.3.x compatible…)

Deprecated features in PHP 5.3.x
PHP 5.3.0 introduces two new error levels: E_DEPRECATED and E_USER_DEPRECATED. The E_DEPRECATED error level is used to indicate that a function or feature has been deprecated. The E_USER_DEPRECATED level is intended for indicating deprecated features in user code, similarly to the E_USER_ERROR and E_USER_WARNING levels.

The following is a list of deprecated INI directives. Use of any of these INI directives will cause an E_DEPRECATED error to be thrown at startup.

Comments starting with ‘#’ are now deprecated in .INI files.
Deprecated functions:

call_user_method() (use call_user_func() instead)
call_user_method_array() (use call_user_func_array() instead)
ereg() (use preg_match() instead)
ereg_replace() (use preg_replace() instead)
eregi() (use preg_match() with the ‘i’ modifier instead)
eregi_replace() (use preg_replace() with the ‘i’ modifier instead)
set_magic_quotes_runtime() and its alias, magic_quotes_runtime()
session_register() (use the $_SESSION superglobal instead)
session_unregister() (use the $_SESSION superglobal instead)
session_is_registered() (use the $SESSION superglobal instead)
set_socket_blocking() (use stream_set_blocking() instead)
split() (use preg_split() instead)
spliti() (use preg_split() with the ‘i’ modifier instead)
mysql_db_query() (use mysql_select_db() and mysql_query() instead)
mysql_escape_string() (use mysql_real_escape_string() instead)
Passing locale category names as strings is now deprecated. Use the LC
* family of constants instead.
The is_dst parameter to mktime(). Use the new timezone handling functions instead.
Deprecated features:

Assigning the return value of new by reference is now deprecated.
Call-time pass-by-reference is now deprecated.
The use of {} to access string offsets is deprecated. Use [] instead.

Yup, I’m (slowly) making my way through the list at in addition to testing each fix for compatibility with 5.2.10 and 5.2.6.

äääähm. sorry, but i don´t understand anything. i don´t know anything about php etc…
and the tickets can´t help me, too.

could someone explain what i have to do to get rid of this problem?
this would be great!


I’ll be checking in the fixes as soon as I figure out a regression in the unit tests.

where do i get these patches there is no link to them mentioned please help