Make WordPress Core


Ignore:
Timestamp:
09/09/2021 01:02:46 PM (5 years ago)
Author:
hellofromTonya
Message:

Code Modernization: Fix reserved keyword and parameter name mismatches for parent/child classes in Walker::end_el().

In the parent class, renames the parameter $object to $data_object.
Why? object is a PHP reserved keyword. The parameter name is selected for consistency with Walker::start_el().

In each child class: renames the parameter to match the parent's method signature.
Why? PHP 8 introduces the ability to pass named arguments to function/method calls. This means the child and parent method signatures (i.e. parameter names) need to match.

Changes for readability:

  • @since clearly specifies the original parameter name and its new name as well as why the change happened.

Follow-up to [7737], [8900], [8970], [14248], [16100], [25642], [25644], [37051], [37056].

Props jrf, hellofromTonya, sergeybiryukov, azaozz, desrosj, johnbillion.
See #51553.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/class-walker-comment.php

    r51779 r51780  
    214214     *
    215215     * @since 2.7.0
     216     * @since 5.9.0 Renamed `$comment` to `$data_object` to match parent class for PHP 8 named parameter support.
    216217     *
    217218     * @see Walker::end_el()
    218219     * @see wp_list_comments()
    219220     *
    220      * @param string     $output  Used to append additional content. Passed by reference.
    221      * @param WP_Comment $comment The current comment object. Default current comment.
    222      * @param int        $depth   Optional. Depth of the current comment. Default 0.
    223      * @param array      $args    Optional. An array of arguments. Default empty array.
    224      */
    225     public function end_el( &$output, $comment, $depth = 0, $args = array() ) {
     221     * @param string     $output      Used to append additional content. Passed by reference.
     222     * @param WP_Comment $data_object Comment data object.
     223     * @param int        $depth       Optional. Depth of the current comment. Default 0.
     224     * @param array      $args        Optional. An array of arguments. Default empty array.
     225     */
     226    public function end_el( &$output, $data_object, $depth = 0, $args = array() ) {
    226227        if ( ! empty( $args['end-callback'] ) ) {
    227228            ob_start();
    228             call_user_func( $args['end-callback'], $comment, $args, $depth );
     229            call_user_func(
     230                $args['end-callback'],
     231                $data_object, // The current comment object.
     232                $args,
     233                $depth
     234            );
    229235            $output .= ob_get_clean();
    230236            return;
Note: See TracChangeset for help on using the changeset viewer.