WordPress.org

Make WordPress Core


Ignore:
Timestamp:
09/09/2021 06:35:34 PM (7 weeks ago)
Author:
hellofromTonya
Message:

Code Modernization: Fix parameter name mismatches for parent/child classes in WP_REST_Controller::prepare_item_for_response().

In each child and grandchild class, renames the first 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.
  • In methods longer than a single line, the generic parameter is reassigned to the original parameter restoring it for context for use within the method. An inline comment is added to explain why this reassignment is made.

Follow-up to [38832], [39011], [39015], [39021], [39024], [39025], [39031], [39036], [43519], [43735], [43739], [43768], [46821], [48173], [48242], [49088], [50995], [51003], [51021].

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/rest-api/endpoints/class-wp-rest-comments-controller.php

    r51293 r51786  
    10291029     *
    10301030     * @since 4.7.0
    1031      *
    1032      * @param WP_Comment      $comment Comment object.
     1031     * @since 5.9.0 Renamed `$comment` to `$item` to match parent class for PHP 8 named parameter support.
     1032     *
     1033     * @param WP_Comment      $item    Comment object.
    10331034     * @param WP_REST_Request $request Request object.
    10341035     * @return WP_REST_Response Response object.
    10351036     */
    1036     public function prepare_item_for_response( $comment, $request ) {
    1037 
    1038         $fields = $this->get_fields_for_response( $request );
    1039         $data   = array();
     1037    public function prepare_item_for_response( $item, $request ) {
     1038        // Restores the more descriptive, specific name for use within this method.
     1039        $comment = $item;
     1040        $fields  = $this->get_fields_for_response( $request );
     1041        $data    = array();
    10401042
    10411043        if ( in_array( 'id', $fields, true ) ) {
Note: See TracChangeset for help on using the changeset viewer.