RTC PHP 8.x bug PR-5.4-dev Pending

User tests: Successful: Unsuccessful:

avatar heelc29
heelc29
21 Jan 2026

Summary of Changes

Deprecated: Using null as the key parameter for array_key_exists() is deprecated

https://wiki.php.net/rfc/deprecations_php_8_5#deprecate_using_values_null_as_an_array_offset_and_when_calling_array_key_exists

Testing Instructions

  • enable language filter plugin
  • open frontend

After you have applied the PR you have to clean the session (eg. close the browser)

Actual result BEFORE applying this Pull Request

deprecation message (only visible in log file, because redirect)
Using null as the key parameter for array_key_exists() is deprecated, use an empty string instead in \plugins\system\languagefilter\src\Extension\LanguageFilter.php

Expected result AFTER applying this Pull Request

no deprecation message

Link to documentations

Please select:

  • No documentation changes for docs.joomla.org needed
  • No documentation changes for manual.joomla.org needed
avatar heelc29 heelc29 - open - 21 Jan 2026
avatar heelc29 heelc29 - change - 21 Jan 2026
Status New Pending
avatar joomla-cms-bot joomla-cms-bot - change - 21 Jan 2026
Category Front End Plugins
avatar heelc29 heelc29 - change - 21 Jan 2026
The description was changed
avatar heelc29 heelc29 - edited - 21 Jan 2026
avatar Fedik Fedik - test_item - 21 Jan 2026 - Tested successfully
avatar Fedik
Fedik - comment - 21 Jan 2026

I have tested this item ✅ successfully on b746e24

review


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/46736.

avatar coolcat-creations
coolcat-creations - comment - 23 Jan 2026

I can't reproduce the error before the patch, can you give me an advise? I enabled logging and look into the administrator/logs folder. In none of the files, also not in deprecated is the error you mentioned.

avatar muhme
muhme - comment - 23 Jan 2026

I can't reproduce the error before the patch, can you give me an advise? I enabled logging and look into the administrator/logs folder. In none of the files, also not in deprecated is the error you mentioned.

In JBT I can reproduce the problem in using php8.5, enable 'System - Language Filter' plugin and visit the frontend. The deprecated message is in administrator/logs/php.log, but this is the configured log file for the JBT PHP installation. I guess you have to look in your PHP log file, which is usually not inside Joomla.

avatar brianteeman
brianteeman - comment - 23 Jan 2026

I cant replicate the reported error on either j5 or 6

avatar muhme muhme - test_item - 23 Jan 2026 - Tested successfully
avatar muhme
muhme - comment - 23 Jan 2026

I have tested this item ✅ successfully on b746e24

Tested with JBT using php8.5

  • Deprecated message seen before PR
    [23-Jan-2026 18:13:28 UTC] PHP Deprecated:  Using null as the key parameter for array_key_exists() is deprecated, use an empty string instead in /var/www/html/plugins/system/languagefilter/src/Extension/LanguageFilter.php on line 922
    
  • Deprecated message is gone after PR
  • ⚠️ There are still other deprecations:
    [23-Jan-2026 18:41:01 UTC] PHP Deprecated:  ArrayIterator::__construct(): Using an object as a backing array for ArrayIterator is deprecated, as it allows violating class constraints and invariants in /var/www/html/libraries/vendor/joomla/registry/src/Registry.php on line 256
    [23-Jan-2026 18:41:32 UTC] PHP Deprecated:  Using null as an array offset is deprecated, use an empty string instead in /var/www/html/libraries/src/Menu/AbstractMenu.php on line 164
    

This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/46736.
avatar muhme muhme - change - 23 Jan 2026
Status Pending Ready to Commit
avatar muhme
muhme - comment - 23 Jan 2026

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/46736.

avatar muhme muhme - change - 23 Jan 2026
Labels Added: RTC PHP 8.x bug PR-5.4-dev
avatar richard67
richard67 - comment - 23 Jan 2026

I can't reproduce the error before the patch, can you give me an advise? I enabled logging and look into the administrator/logs folder. In none of the files, also not in deprecated is the error you mentioned.

@coolcat-creations It needs PHP error reporting set to maximum and PHP to be configured to log errors into a log file - this can be an extra PHP log or the log file of the webserver (e.g. Apache), depending on the particular environment, and most of all it needs PHP 8.5 for reproducing the issue.

I cant replicate the reported error on either j5 or 6

@brianteeman Did you environment fulfil the above conditions?

avatar brianteeman
brianteeman - comment - 23 Jan 2026

Yes it did and as you know i've regularly worked on deprecated issues and created pull requests in the past. Weird that this one didn't come up but from code review it should have done and this fix is good

avatar richard67 richard67 - change - 23 Jan 2026
Status Ready to Commit Fixed in Code Base
Closed_Date 0000-00-00 00:00:00 2026-01-23 20:05:52
Closed_By richard67
avatar richard67 richard67 - close - 23 Jan 2026
avatar richard67 richard67 - merge - 23 Jan 2026
avatar richard67
richard67 - comment - 23 Jan 2026

@heelc29 Thanks for this PR, and thanks @Fedik and @muhme for review and testing.

avatar exlemor exlemor - test_item - 24 Jan 2026 - Tested successfully
avatar exlemor
exlemor - comment - 24 Jan 2026

I have tested this item ✅ successfully on ffebc88

I have tested this successfully!

Thanks @heelc29!


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/46736.

Add a Comment

Login with GitHub to post a comment