¿Cómo obtener el primer día de la semana en PHP?

Use la función strtotime() para obtener el primer día de la semana usando PHP. Esta función devuelve la marca de tiempo de la variable de tiempo predeterminada y luego usa la función date() para convertir la fecha de la marca de tiempo en una fecha comprensible.

Función strtotime(): La función strtotime() devuelve el resultado en la marca de tiempo analizando la string de tiempo.
Sintaxis:

strtotime($EnglishDateTime, $time_now)

Parámetros: la función strtotime() acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:

  • $EnglishDateTime: Especifica la descripción de fecha y hora textual en inglés, que representa la fecha u hora a devolver. La función analiza la string y devuelve el tiempo en segundos. Es parámetro requerido.
  • $time_now: este parámetro especifica la marca de tiempo utilizada para calcular el valor devuelto. Es un parámetro opcional.

Función date(): La función date() devuelve un formato de fecha más comprensible y legible por humanos.
Sintaxis:

date( format, timestamp )

Parámetros: esta función acepta dos parámetros, como se mencionó anteriormente y se describe a continuación:

  • formato: Especifica el formato de fecha y hora en que se mostrará el resultado.
  • timestamp: Es la variable de tiempo por defecto a partir de la cual se generará la fecha.

Nota: en PHP, la semana comienza el lunes, por lo que si la string de tiempo se proporciona como «esta semana», la salida será la marca de tiempo del lunes, que se puede leer pasándola a través de la función date().

Programa 1: Obtenga el primer día predeterminado de una semana cuando la string de tiempo es «esta semana».

<?php
  
// PHP program to print default first
// day of current week
  
// l will display the name of the day
  
// d, m, Y will display the day, month
// and year respectively 
$firstday = date('l - d/m/Y', strtotime("this week"));
  
echo "First day of this week: ", $firstday;
  
?>
Producción:

First day of this week: Monday - 04/02/2019

Ahora, por lo general, el domingo se considera como el primer día de la semana. Entonces, en PHP para obtener el domingo de como primer día de una semana, considere el domingo de la semana anterior. Es decir, para obtener el primer día (domingo) de una semana, debe obtener el domingo de la semana anterior y, para obtener el primer día (domingo) de la próxima semana, debe obtener el domingo de esta semana y así sucesivamente.
PHP admite la indexación -ve en la string de tiempo. Entonces, para obtener la semana anterior, puede usar la string de tiempo como «-1 semana» y para obtener el día, también puede incluir el nombre del día en la string de tiempo.

Programa 2: Obtenga el primer día (domingo) de la semana.

<?php
  
// PHP program to display sunday as first day of a week
  
// l will display the name of the day
// d, m and Y will display the day, month and year respectively
  
// For current week the time-string will be "sunday -1 week"
// here -1 denotes last week
$firstday = date('l - d/m/Y', strtotime("sunday -1 week"));
echo "First day of this week: ", $firstday, "\n";
  
// For previous week the time-string wil be "sunday -2 week"
// here -2 denotes week before last week
$firstday = date('l - d/m/Y', strtotime("sunday -2 week"));
echo "First day of last week: ", $firstday, "\n";
  
// For next week the time-string wil be "sunday 0 week"
// here 0 denotes this week
$firstday = date('l - d/m/Y', strtotime("sunday 0 week"));
echo "First day of next week: ", $firstday, "\n";
  
// For week after next week the time-string wil be "sunday 1 week"
// here 1 denotes next week
$firstday = date('l - d/m/Y', strtotime("sunday 1 week"));
echo "First day of week after next week : ", $firstday;
  
?>
Producción:

First day of this week: Sunday - 03/02/2019
First day of last week: Sunday - 27/01/2019
First day of next week: Sunday - 10/02/2019
First day of week after next week : Sunday - 17/02/2019

Publicación traducida automáticamente

Artículo escrito por Arghyadip_Manna y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *