After PHP Upgrade I get this Error, on many points:
[Wed Jun 10 22:50:16 2015] [error] [client 10.0.7.85] PHP Fatal error: Cannot use object of type stdClass as array in /var/www/bp/apps/frontend/modules/timekeeping/actions/actions.class.php on line 1275, referer: http://10.0.0.244/timekeeping/overviewAbsent
if (isset($employee_hours[$this->selected_day - 1]->special) && in_array($employee_hours[$this->selected_day - 1]->special, array( 'u', 'm', 's', 'b', 'kk', 'k', 'f', 'fb', 'uf' ))) {
array_push($this->employees, $employee);
}
$employee_hours
is obviously an object. However, with the$employee_hours[$this->selected_day - 1]
notation, you're trying to use it as an associative array – which is invalid.If the
$employee_hours
can be of different types (which is not desirable btw), you should at least check that it is an array before using it as one:By the way, you say that this happens since you've upgraded your PHP install. I just made a quick test with various PHP versions, the only version that does not trigger a fatal error is PHP 4.x … all of the PHP 5.x versions produce a fatal error.