Make WordPress Core


Ignore:
Timestamp:
06/22/2023 02:34:56 PM (20 months ago)
Author:
SergeyBiryukov
Message:

Code Modernization: Replace usage of strpos() with str_contains().

str_contains() was introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) contains the given substring (needle).

WordPress core includes a polyfill for str_contains() on PHP < 8.0 as of WordPress 5.9.

This commit replaces false !== strpos( ... ) with str_contains() in core files, making the code more readable and consistent, as well as better aligned with modern development practices.

Follow-up to [52039], [52040], [52326], [55703], [55710], [55987].

Props Soean, spacedmonkey, costdev, dingo_d, azaozz, mikeschroder, flixos90, peterwilsoncc, SergeyBiryukov.
Fixes #58206.

File:
1 edited

Legend:

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

    r53877 r55988  
    299299
    300300        if ( is_wp_error( $api ) ) {
    301             if ( false !== strpos( $api->get_error_message(), 'Plugin not found.' ) ) {
     301            if ( str_contains( $api->get_error_message(), 'Plugin not found.' ) ) {
    302302                $api->add_data( array( 'status' => 404 ) );
    303303            } else {
     
    810810
    811811            foreach ( $item as $field ) {
    812                 if ( is_string( $field ) && false !== strpos( strip_tags( $field ), $search ) ) {
     812                if ( is_string( $field ) && str_contains( strip_tags( $field ), $search ) ) {
    813813                    $matched_search = true;
    814814                    break;
Note: See TracChangeset for help on using the changeset viewer.