Make WordPress Core


Ignore:
Timestamp:
08/09/2021 05:19:21 PM (6 months ago)
Author:
SergeyBiryukov
Message:

Code Modernization: Rename the readonly() function to wp_readonly().

Since PHP 8.1, readonly is a reserved keyword and cannot be used as a function name.

In order to avoid PHP parser errors, the readonly() function was extracted to a separate file and is now only included conditionally on PHP < 8.1.

This commit also:

  • Moves the tests for the __checked_selected_helper() function and all the related functions to their own file.
  • Switches to named data providers. This makes the output when using the --testdox option more descriptive and is helpful when trying to debug which data set from a data provider failed the test.
  • Improves the tests in question to make them feature-complete and expand test coverage.

Props jrf, ayeshrajans, haosun, knutsp, swissspidy, SergeyBiryukov.
Fixes #53858.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/general-template.php

    r51298 r51586  
    48144814 * Compares the first two arguments and if identical marks as readonly
    48154815 *
    4816  * @since 4.9.0
     4816 * @since 5.9.0
    48174817 *
    48184818 * @param mixed $readonly One of the values to compare
     
    48214821 * @return string HTML attribute or empty string
    48224822 */
    4823 function readonly( $readonly, $current = true, $echo = true ) {
     4823function wp_readonly( $readonly, $current = true, $echo = true ) {
    48244824    return __checked_selected_helper( $readonly, $current, $echo, 'readonly' );
     4825}
     4826
     4827/*
     4828 * Include a compat `readonly()` function on PHP < 8.1. Since PHP 8.1,
     4829 * `readonly` is a reserved keyword and cannot be used as a function name.
     4830 * In order to avoid PHP parser errors, this function was extracted
     4831 * to a separate file and is only included conditionally on PHP < 8.1.
     4832 */
     4833if ( PHP_VERSION_ID < 80100 ) {
     4834    require_once __DIR__ . '/php-compat/readonly.php';
    48254835}
    48264836
Note: See TracChangeset for help on using the changeset viewer.