Make WordPress Core


Ignore:
Timestamp:
01/20/2023 12:19:09 AM (17 months ago)
Author:
SergeyBiryukov
Message:

Code Modernization: Rename parameters that use reserved keywords in phpunit/tests/rest-api/rest-*-controller.php.

While using reserved PHP keywords as parameter name labels is allowed, in the context of function calls using named parameters in PHP 8.0+, this will easily lead to confusion. To avoid that, it is recommended not to use reserved keywords as function parameter names.

This commit:

  • Renames the $object parameter to $response_data in:
    • WP_Test_REST_Attachments_Controller::additional_field_get_callback()
    • WP_Test_REST_Autosaves_Controller::additional_field_get_callback()
    • WP_Test_REST_Categories_Controller::additional_field_get_callback()
    • WP_Test_REST_Comments_Controller::additional_field_get_callback()
    • WP_Test_REST_Post_Statuses_Controller::additional_field_get_callback()
    • WP_Test_REST_Post_Types_Controller::additional_field_get_callback()
    • WP_Test_REST_Posts_Controller::additional_field_get_callback()
    • WP_Test_REST_Revisions_Controller::additional_field_get_callback()
    • WP_Test_REST_Tags_Controller::additional_field_get_callback()
    • WP_Test_REST_Users_Controller::additional_field_get_callback()
  • Amends the $data and $prepared parameters for consistency in:
    • WP_REST_Controller::add_additional_fields_to_object()
    • WP_REST_Controller::filter_response_by_context()
    • rest_filter_response_by_context()

Follow-up to [52946], [52996], [52997], [52998], [53003], [53014], [53029], [53039], [53116], [53117], [53137], [53174], [53184], [53185], [53192], [53193], [53198], [53203], [53207], [53215], [53216], [53220], [53230], [53232], [53236], [53239], [53240], [53242], [53243], [53245], [53246], [53257], [53269], [53270], [53271], [53272], [53273], [53274], [53275], [53276], [53277], [53281], [53283], [53284], [53285], [53287], [53364], [53365], [54927], [54929], [54930], [54931], [54932], [54933], [54938], [54943], [54944], [54945], [54946], [54947], [54948], [54950], [54951], [54952], [54956], [54959], [54960], [54961], [54962], [54964], [54965], [54969], [54970], [54971], [54972], [54996], [55000], [55011], [55013], [55014], [55015], [55016], [55017], [55020], [55021], [55023], [55027], [55028], [55034], [55036], [55037], [55038], [55039], [55049], [55050], [55060], [55062], [55064], [55065], [55076], [55077], [55078], [55081], [55090], [55100].

Props jrf, aristath, poena, justinahinon, SergeyBiryukov.
See #56788.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/wp-includes/rest-api.php

    r54997 r55104  
    29352935 *              Support the "anyOf" and "oneOf" keywords.
    29362936 *
    2937  * @param array|object $data    The response data to modify.
    2938  * @param array        $schema  The schema for the endpoint used to filter the response.
    2939  * @param string       $context The requested context.
     2937 * @param array|object $response_data The response data to modify.
     2938 * @param array        $schema        The schema for the endpoint used to filter the response.
     2939 * @param string       $context       The requested context.
    29402940 * @return array|object The filtered response data.
    29412941 */
    2942 function rest_filter_response_by_context( $data, $schema, $context ) {
     2942function rest_filter_response_by_context( $response_data, $schema, $context ) {
    29432943    if ( isset( $schema['anyOf'] ) ) {
    2944         $matching_schema = rest_find_any_matching_schema( $data, $schema, '' );
     2944        $matching_schema = rest_find_any_matching_schema( $response_data, $schema, '' );
    29452945        if ( ! is_wp_error( $matching_schema ) ) {
    29462946            if ( ! isset( $schema['type'] ) ) {
     
    29482948            }
    29492949
    2950             $data = rest_filter_response_by_context( $data, $matching_schema, $context );
     2950            $response_data = rest_filter_response_by_context( $response_data, $matching_schema, $context );
    29512951        }
    29522952    }
    29532953
    29542954    if ( isset( $schema['oneOf'] ) ) {
    2955         $matching_schema = rest_find_one_matching_schema( $data, $schema, '', true );
     2955        $matching_schema = rest_find_one_matching_schema( $response_data, $schema, '', true );
    29562956        if ( ! is_wp_error( $matching_schema ) ) {
    29572957            if ( ! isset( $schema['type'] ) ) {
     
    29592959            }
    29602960
    2961             $data = rest_filter_response_by_context( $data, $matching_schema, $context );
    2962         }
    2963     }
    2964 
    2965     if ( ! is_array( $data ) && ! is_object( $data ) ) {
    2966         return $data;
     2961            $response_data = rest_filter_response_by_context( $response_data, $matching_schema, $context );
     2962        }
     2963    }
     2964
     2965    if ( ! is_array( $response_data ) && ! is_object( $response_data ) ) {
     2966        return $response_data;
    29672967    }
    29682968
     
    29722972        $type = 'object'; // Back compat if a developer accidentally omitted the type.
    29732973    } else {
    2974         return $data;
     2974        return $response_data;
    29752975    }
    29762976
     
    29792979
    29802980    if ( $is_array_type && $is_object_type ) {
    2981         if ( rest_is_array( $data ) ) {
     2981        if ( rest_is_array( $response_data ) ) {
    29822982            $is_object_type = false;
    29832983        } else {
     
    29882988    $has_additional_properties = $is_object_type && isset( $schema['additionalProperties'] ) && is_array( $schema['additionalProperties'] );
    29892989
    2990     foreach ( $data as $key => $value ) {
     2990    foreach ( $response_data as $key => $value ) {
    29912991        $check = array();
    29922992
     
    30133013            if ( $is_array_type ) {
    30143014                // All array items share schema, so there's no need to check each one.
    3015                 $data = array();
     3015                $response_data = array();
    30163016                break;
    30173017            }
    30183018
    3019             if ( is_object( $data ) ) {
    3020                 unset( $data->$key );
     3019            if ( is_object( $response_data ) ) {
     3020                unset( $response_data->$key );
    30213021            } else {
    3022                 unset( $data[ $key ] );
     3022                unset( $response_data[ $key ] );
    30233023            }
    30243024        } elseif ( is_array( $value ) || is_object( $value ) ) {
    30253025            $new_value = rest_filter_response_by_context( $value, $check, $context );
    30263026
    3027             if ( is_object( $data ) ) {
    3028                 $data->$key = $new_value;
     3027            if ( is_object( $response_data ) ) {
     3028                $response_data->$key = $new_value;
    30293029            } else {
    3030                 $data[ $key ] = $new_value;
    3031             }
    3032         }
    3033     }
    3034 
    3035     return $data;
     3030                $response_data[ $key ] = $new_value;
     3031            }
     3032        }
     3033    }
     3034
     3035    return $response_data;
    30363036}
    30373037
Note: See TracChangeset for help on using the changeset viewer.