PHP 5.3.0 and CiviCRM Standalone do *not* mix

Published
2009-08-11 17:31
Written by
A warning to CiviCRM Standalone users: Don't upgrade to PHP 5.3.0 just yet. It removes deprecated behavior that the OpenID library relies on. That means you won't be able to login if you upgrade to 5.3.0+. Going back to PHP 5.2.x fixes the issue. It appears that PHP 5.3.0's removal of the ability to pass arguments by reference at call-time via the call_user_func methods has broken the OpenID library that CiviCRM Standalone uses for logins. Hopefully the upstream library authors will issue a fixed version at some point. Rest assured we'll get that into a subsequent release of CiviCRM when they do. But for now, Civi Standalone and PHP 5.3.0 do not play well together. Drupal and Joomla do not use the OpenID library, so they may be fine, but I haven't tested it. If you have, please let us know how it went in a comment.
Filed under

Comments

http://forums.invisionpower.com/index.php?app=tracker&showissue=16956

(scroll down to post #6). Seems a hack to just a few files and might be worth it. Not sure how responsive JanRain will be since they never fixed the warnings either :(

lobo

Yeah, that would probably fix it. From reading the PHP docs, it didn't sound like that was possible. This may still generate warnings about call-time pass-by-reference, but oh well. If it fixes it for now, then we'll just have to wait on upstream.

I'll work on applying and testing this patch. Hopefully we can then have a PHP 5.3 compatible CiviCRM 3.0 release.