Update call to htmlspecialchars_decode for PHP 8.1

Created on 7 September 2023, about 1 year ago
Updated 11 September 2023, about 1 year ago

Problem/Motivation

PHP 8.0 will be end-of-life in November. Codesniffer found one issue in the module for PHP 8.1.

Steps to reproduce

Run a codesniffer with PHP 8.1 compatibility rules on the Tablefield module.
Note this error is returned:

views/plugins/views_plugin_style.inc
---------------------------------------------------------------------------------------
FOUND 1 ERROR AFFECTING 1 LINE
---------------------------------------------------------------------------------------
 490 | ERROR | The default value of the $flags parameter for htmlspecialchars_decode() was changed
     |       | from ENT_COMPAT to ENT_QUOTES | ENT_SUBSTITUTE | ENT_HTML401 in PHP 8.1. For
     |       | cross-version compatibility, the $flags parameter should be explicitly set.
---------------------------------------------------------------------------------------

Proposed resolution

Update the function call to htmlspecialchars_decode() to explicitly set the flags parameter to ENT_COMPAT, which should produce the same results across all supported PHP versions.

Remaining tasks

Patch and test.

User interface changes

None.

API changes

None.

Data model changes

None.

πŸ“Œ Task
Status

Fixed

Version

3.0

Component

Code

Created by

πŸ‡ΊπŸ‡ΈUnited States cboyden

Live updates comments and jobs are added and updated live.
  • PHP 8.1

    The issue particularly affects sites running on PHP version 8.1.0 or later.

Sign in to follow issues

Comments & Activities

Production build 0.71.5 2024