From ce4627f67feb608f8528f74709c8dc9aeed234e3 Mon Sep 17 00:00:00 2001 From: Sergey Biryukov Date: Thu, 28 Nov 2024 22:50:21 +0000 Subject: [PATCH] Coding Standards: Cast `gmdate( 'w' )` to `int` before using as integer. This addresses several instances of `gmdate( 'w' )` being used directly as an integer, when it's actually a numeric string. The issue is remediated by casting the value to `int` before use. Affected functions: * `get_calendar()` * `get_weekstartend()` Follow-up to [508], [1632]. Props justlevine. See #52217. git-svn-id: https://develop.svn.wordpress.org/trunk@59471 602fd350-edb4-49c9-b593-d223f7449a82 --- src/wp-includes/functions.php | 5 +++-- src/wp-includes/general-template.php | 6 +++--- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/src/wp-includes/functions.php b/src/wp-includes/functions.php index a4cfa13cd20dc..dd0066cf3fb63 100644 --- a/src/wp-includes/functions.php +++ b/src/wp-includes/functions.php @@ -594,10 +594,10 @@ function get_weekstartend( $mysqlstring, $start_of_week = '' ) { $day = mktime( 0, 0, 0, $md, $mm, $my ); // The day of the week from the timestamp. - $weekday = gmdate( 'w', $day ); + $weekday = (int) gmdate( 'w', $day ); if ( ! is_numeric( $start_of_week ) ) { - $start_of_week = get_option( 'start_of_week' ); + $start_of_week = (int) get_option( 'start_of_week' ); } if ( $weekday < $start_of_week ) { @@ -609,6 +609,7 @@ function get_weekstartend( $mysqlstring, $start_of_week = '' ) { // $start + 1 week - 1 second. $end = $start + WEEK_IN_SECONDS - 1; + return compact( 'start', 'end' ); } diff --git a/src/wp-includes/general-template.php b/src/wp-includes/general-template.php index 1d9fc98b843f7..e96f0f7c37429 100644 --- a/src/wp-includes/general-template.php +++ b/src/wp-includes/general-template.php @@ -2373,7 +2373,7 @@ function get_calendar( $initial = true, $display = true ) { } // See how much we should pad in the beginning. - $pad = calendar_week_mod( gmdate( 'w', $unixmonth ) - $week_begins ); + $pad = calendar_week_mod( (int) gmdate( 'w', $unixmonth ) - $week_begins ); if ( 0 != $pad ) { $calendar_output .= "\n\t\t" . ' '; } @@ -2412,12 +2412,12 @@ function get_calendar( $initial = true, $display = true ) { $calendar_output .= ''; - if ( 6 == calendar_week_mod( gmdate( 'w', mktime( 0, 0, 0, $thismonth, $day, $thisyear ) ) - $week_begins ) ) { + if ( 6 == calendar_week_mod( (int) gmdate( 'w', mktime( 0, 0, 0, $thismonth, $day, $thisyear ) ) - $week_begins ) ) { $newrow = true; } } - $pad = 7 - calendar_week_mod( gmdate( 'w', mktime( 0, 0, 0, $thismonth, $day, $thisyear ) ) - $week_begins ); + $pad = 7 - calendar_week_mod( (int) gmdate( 'w', mktime( 0, 0, 0, $thismonth, $day, $thisyear ) ) - $week_begins ); if ( 0 != $pad && 7 != $pad ) { $calendar_output .= "\n\t\t" . ' '; }