Web lists-archives.com

[PHP] Weird error with PHP7: Cannot access property




Hello,

I’m working on a PHP software, FusionDirectory.
It works fine with PHP 5 but I’m getting strange errors with PHP-7.
As far as I know it does not use anything that is mentionned in the migration guide.

I get this error:
Uncaught Error: Cannot access  property filter::$initial in /usr/share/fusiondirectory/include/class_filter.inc:425
Stack trace:
#0 /usr/share/fusiondirectory/include/class_listing.inc(639): filter->query()
#1 /usr/share/fusiondirectory/include/class_management.inc(221): listing->update()
#2 /usr/share/fusiondirectory/include/simpleplugin/class_simpleManagement.inc(411): management->renderList()
#3 /usr/share/fusiondirectory/include/class_management.inc(216): simpleManagement->renderList()
#4 /usr/share/fusiondirectory/plugins/admin/departments/main.inc(47): management->execute()
#5 /usr/share/fusiondirectory/html/main.php(283): require('/usr/share/fusi...')
#6 {main}

But initial is a var of filter, I really don’t see why is couldn’t be accessed: https://git.fusiondirectory.org/gitweb/?p=main/fusiondirectory.git;a=blob;f=include/class_filter.inc;h=aac3ec5e8c7e7ab098f3ea0a867526571c5040a9;hb=refs/heads/1.1
The PHP error is really not clear, it just says it can’t access the property with no more explanation.
Any ideas?

The other weird thing I’m getting is a lot of errors about using an integer as an object, in most classes using a config member, usually initialized like this:
 function __construct (&$config, $dn = NULL, $object = NULL)
 {
 $this->config = &$config;

Is there a change in the reference system in PHP7? This worked fine before, and now config is turning to an integer at some point, I’m not sure how to debug this.

Côme

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php