Make WordPress Core


Ignore:
Timestamp:
06/22/2023 02:34:56 PM (12 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/user.php

    r55857 r55988  
    17661766    }
    17671767
    1768     $prefixed = false !== strpos( $field, 'user_' );
     1768    $prefixed = str_contains( $field, 'user_' );
    17691769
    17701770    if ( 'edit' === $context ) {
     
    29902990    $expiration_duration = apply_filters( 'password_reset_expiration', DAY_IN_SECONDS );
    29912991
    2992     if ( false !== strpos( $user->user_activation_key, ':' ) ) {
     2992    if ( str_contains( $user->user_activation_key, ':' ) ) {
    29932993        list( $pass_request_time, $pass_key ) = explode( ':', $user->user_activation_key, 2 );
    29942994        $expiration_time                      = $pass_request_time + $expiration_duration;
Note: See TracChangeset for help on using the changeset viewer.