Cannot redeclare date_add()
I recently had this problem at my uklearners.com directory:
Fatal error: Cannot redeclare date_add() in www/uklearners.com/include/functions.php on line 1086
It seems the problem occurred since my webhosting upgraded php to php5.3
Here’s what I did to solve the problem:
1. In functions.php found the code
function date_add
and added an A after to make
function date_addA
2. This then left a further problem. I got these messages:
Deprecated: Assigning the return value of new by reference is deprecated in www/uklearners.com/libs/adodb/adodb.inc.php on line 914
Deprecated: Assigning the return value of new by reference is deprecated in www/uklearners.com/libs/adodb/adodb.inc.php on line 1988
Deprecated: Assigning the return value of new by reference is deprecated in www/uklearners.com/libs/adodb/adodb.inc.php on line 2060
So following advice at the phpld forum I accessed these files from my phpld2.2 installation:
/include/functions.php
/admin/init.php
/admin/dir_links_edit.php
/admin/dir_categs_edit.php
/admin/conf_users_edit.php
I then used find and replace to change everywhere that says split to make it say explode
3. I then went here http://sourceforge.net/projects/adodb/files/adodb-php5-only/
and downloaded the latest version of adodb and rep[laced the existing file libs/adodb.inc.php with the new one.
All sorted!
If you’re having difficulty with “Cannot redeclare date_add()” in your version of phpld or cannot locate download for adodb, then hopefully this post will help!