PHP Error when trying to use eXtplorer?
Added by Jason M about 7 years ago
I just installed eXtplorer and get an error:
Parse error: syntax error, unexpected '[' in /eXtplorer/libraries/standalone.php on line 232
I tried the 2.1.9 and 2.1.10 versions and both are doing this.
Any idea what is going on?
I have PHP 5.3.27 on this server.
Replies (1)
RE: PHP Error when trying to use eXtplorer? - Added by Atesin Dj almost 7 years ago
i had the same problem... after cracking my head on the screen i found some suggestion on stack exchange that lead me to php.net Array page
php <= 5.3 (as in centos 6) does not support 'array dereferencing' that is calling an element directly from a function that returns an array, something like
$my_array_element = my_function_that_returns_an_array($blah)[$my_desired_index];
you should use instead
$my_temp_array = my_function_that_returns_an_array($blah);
$my_array_element = $my_temp_array[$desired_index];
more info = http://php.net/manual/en/language.types.array.php example #7
specifically, i fixed this by editing some files, i dont know if the issue are replicated somewhere else
libraries/standalone.php on line 232
< $this->_userstate[$var_name] = $iFilter->sanitize( array($this->_userstate[$var_name]) )[0];
$tmp_arr = $iFilter->sanitize( array($this->_userstate[$var_name]) );$this->_userstate[$var_name] = $tmp_arr0;
include/functions.php on line 1192
< $return = $noHtmlFilter->sanitize( array($return) )[0];
$tmp_arr = $noHtmlFilter->sanitize( array($return) );$return = $tmp_arr0;