Make WordPress Core


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

    r55406 r55988  
    139139        // Grab the latest revision, but not an autosave.
    140140        foreach ( $revisions as $revision ) {
    141             if ( false !== strpos( $revision->post_name, "{$revision->post_parent}-revision" ) ) {
     141            if ( str_contains( $revision->post_name, "{$revision->post_parent}-revision" ) ) {
    142142                $latest_revision = $revision;
    143143                break;
     
    224224
    225225    for ( $i = 0; isset( $revisions[ $i ] ); $i++ ) {
    226         if ( false !== strpos( $revisions[ $i ]->post_name, 'autosave' ) ) {
     226        if ( str_contains( $revisions[ $i ]->post_name, 'autosave' ) ) {
    227227            continue;
    228228        }
     
    314314    }
    315315
    316     if ( false !== strpos( $post->post_name, "{$post->post_parent}-autosave" ) ) {
     316    if ( str_contains( $post->post_name, "{$post->post_parent}-autosave" ) ) {
    317317        return (int) $post->post_parent;
    318318    }
Note: See TracChangeset for help on using the changeset viewer.