Make WordPress Core


Ignore:
Timestamp:
06/22/2023 02:34:56 PM (2 years 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/comment-template.php

    r55749 r55988  
    971971
    972972                // Replace '% Comments' with a proper plural form.
    973                 if ( $text && ! preg_match( '/[0-9]+/', $text ) && false !== strpos( $more, '%' ) ) {
     973                if ( $text && ! preg_match( '/[0-9]+/', $text ) && str_contains( $more, '%' ) ) {
    974974                    /* translators: %s: Number of comments. */
    975975                    $new_text = _n( '%s Comment', '%s Comments', $comments_number );
     
    977977
    978978                    $more = str_replace( $text, $new_text, $more );
    979                     if ( false === strpos( $more, '%' ) ) {
     979                    if ( ! str_contains( $more, '%' ) ) {
    980980                        $more = '% ' . $more;
    981981                    }
     
    26522652
    26532653    // Remove `aria-describedby` from the email field if there's no associated description.
    2654     if ( isset( $args['fields']['email'] ) && false === strpos( $args['comment_notes_before'], 'id="email-notes"' ) ) {
     2654    if ( isset( $args['fields']['email'] ) && ! str_contains( $args['comment_notes_before'], 'id="email-notes"' ) ) {
    26552655        $args['fields']['email'] = str_replace(
    26562656            ' aria-describedby="email-notes"',
Note: See TracChangeset for help on using the changeset viewer.