mirror of
https://github.com/gosticks/wordpress-develop.git
synced 2026-10-04 22:57:20 +00:00
Code Modernization: Replace usage of substr() with str_starts_with() and str_ends_with().
`str_starts_with()` and `str_ends_with()` were introduced in PHP 8.0 to perform a case-sensitive check indicating if the string to search in (haystack) begins or ends with the given substring (needle). WordPress core includes a polyfill for these functions on PHP < 8.0 as of WordPress 5.9. This commit uses `str_starts_with()` and `str_ends_with()` in core files where appropriate: * `$needle === substr( $string, 0, $length )`, where `$length` is the length of `$needle`, is replaced with `str_starts_with( $haystack, $needle )`. * `$needle === substr( $string, $offset )`, where `$offset` is negative and the absolute value of `$offset` is the length of `$needle`, is replaced with `str_ends_with( $haystack, $needle )`. This aims to make the code more readable and consistent, as well as better aligned with modern development practices. Follow-up to [52039], [52040], [52326], [55703], [55710], [55987], [55988]. Props Soean, spacedmonkey, Clorith, ocean90, azaozz, sabernhardt, SergeyBiryukov. Fixes #58220. git-svn-id: https://develop.svn.wordpress.org/trunk@55990 602fd350-edb4-49c9-b593-d223f7449a82
This commit is contained in:
@@ -908,7 +908,7 @@ function is_active_widget( $callback = false, $widget_id = false, $id_base = fal
|
||||
|
||||
if ( is_array( $sidebars_widgets ) ) {
|
||||
foreach ( $sidebars_widgets as $sidebar => $widgets ) {
|
||||
if ( $skip_inactive && ( 'wp_inactive_widgets' === $sidebar || 'orphaned_widgets' === substr( $sidebar, 0, 16 ) ) ) {
|
||||
if ( $skip_inactive && ( 'wp_inactive_widgets' === $sidebar || str_starts_with( $sidebar, 'orphaned_widgets' ) ) ) {
|
||||
continue;
|
||||
}
|
||||
|
||||
@@ -1382,7 +1382,7 @@ function wp_map_sidebars_widgets( $existing_sidebars_widgets ) {
|
||||
}
|
||||
|
||||
foreach ( $existing_sidebars_widgets as $sidebar => $widgets ) {
|
||||
if ( 'wp_inactive_widgets' === $sidebar || 'orphaned_widgets' === substr( $sidebar, 0, 16 ) ) {
|
||||
if ( 'wp_inactive_widgets' === $sidebar || str_starts_with( $sidebar, 'orphaned_widgets' ) ) {
|
||||
$new_sidebars_widgets['wp_inactive_widgets'] = array_merge( $new_sidebars_widgets['wp_inactive_widgets'], (array) $widgets );
|
||||
unset( $existing_sidebars_widgets[ $sidebar ] );
|
||||
}
|
||||
@@ -1490,7 +1490,7 @@ function wp_map_sidebars_widgets( $existing_sidebars_widgets ) {
|
||||
|
||||
// Remove orphaned widgets, we're only interested in previously active sidebars.
|
||||
foreach ( $old_sidebars_widgets as $sidebar => $widgets ) {
|
||||
if ( 'orphaned_widgets' === substr( $sidebar, 0, 16 ) ) {
|
||||
if ( str_starts_with( $sidebar, 'orphaned_widgets' ) ) {
|
||||
unset( $old_sidebars_widgets[ $sidebar ] );
|
||||
}
|
||||
}
|
||||
@@ -1627,7 +1627,7 @@ function wp_widget_rss_output( $rss, $args = array() ) {
|
||||
$summary = $desc;
|
||||
|
||||
// Change existing [...] to […].
|
||||
if ( '[...]' === substr( $summary, -5 ) ) {
|
||||
if ( str_ends_with( $summary, '[...]' ) ) {
|
||||
$summary = substr( $summary, 0, -5 ) . '[…]';
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user