Make WordPress Core


Ignore:
Timestamp:
09/11/2025 02:45:56 PM (5 months ago)
Author:
swissspidy
Message:

Code Modernization: Address reflection no-op function deprecations in PHP 8.5.

Reflection*::setAccessible() methods are no-ops since PHP 8.1. This commit adds conditional checks to only call these functions on older PHP versions.

Reference: PHP RFC: Deprecations for PHP 8.5: Deprecate `Reflection*::setAccessible()`.

Props rishabhwp, swissspidy.
Fixes #63956.
See #63061.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/tests/phpunit/tests/admin/plugin-dependencies/base.php

    r57658 r60729  
    8383        }
    8484
    85         self::$reflected_members[ $property ]->setAccessible( true );
     85        if ( PHP_VERSION_ID < 80100 ) {
     86            self::$reflected_members[ $property ]->setAccessible( true );
     87        }
    8688        self::$reflected_members[ $property ]->setValue( self::$instance, $value );
    87         self::$reflected_members[ $property ]->setAccessible( false );
     89        if ( PHP_VERSION_ID < 80100 ) {
     90            self::$reflected_members[ $property ]->setAccessible( false );
     91        }
    8892    }
    8993
     
    99103        }
    100104
    101         self::$reflected_members[ $property ]->setAccessible( true );
     105        if ( PHP_VERSION_ID < 80100 ) {
     106            self::$reflected_members[ $property ]->setAccessible( true );
     107        }
    102108        $value = self::$reflected_members[ $property ]->getValue( self::$instance );
    103         self::$reflected_members[ $property ]->setAccessible( false );
     109        if ( PHP_VERSION_ID < 80100 ) {
     110            self::$reflected_members[ $property ]->setAccessible( false );
     111        }
    104112
    105113        return $value;
     
    119127        }
    120128
    121         self::$reflected_members[ $method ]->setAccessible( true );
     129        if ( PHP_VERSION_ID < 80100 ) {
     130            self::$reflected_members[ $method ]->setAccessible( true );
     131        }
    122132        $value = self::$reflected_members[ $method ]->invokeArgs( self::$instance, $args );
    123         self::$reflected_members[ $method ]->setAccessible( false );
     133        if ( PHP_VERSION_ID < 80100 ) {
     134            self::$reflected_members[ $method ]->setAccessible( false );
     135        }
    124136
    125137        return $value;
Note: See TracChangeset for help on using the changeset viewer.