Details
-
Type: Bug
-
Status: Done/Fixed
-
Priority: Trivial
-
Resolution: Fixed/Completed
-
Affects Version/s: 4.6
-
Fix Version/s: 4.6.1
-
Component/s: None
-
Labels:None
-
Documentation Required?:None
Description
I can't quite figure out why I'm hitting this because it seems like it's not new & 'should' be seen by others -maybe there is a php version in play?
When I do a back-office event registration I get the enotice in the title.
The issue appears to be that
if (in_array(key($params['role_id']), CRM_Core_DAO::acceptedSQLOperators())) {
is resolving to TRUE when key($params['role_id']) == 0
even though zero is not in the acceptedSQLOperators array.
However, adding the strict param (TRUE) to the in_array call seems to make the evaluation correct. The in_array manual (http://php.net/manual/en/function.in-array.php) comments could be summarised as 'without strict checking here be dragons'.