Estoy tratando de averiguar el primer miércoles de un mes determinado usando strtotime
, pero el argumento del "primer miércoles" falla cada vez que el primer miércoles cae en la primera.Obteniendo el primer día de la semana en un mes con strtotime
Para una ilustración más general de este problema, consulte el siguiente código y resultado:
$mon = strtotime("December 2010 first monday");
$tue = strtotime("December 2010 first tuesday");
$wed = strtotime("December 2010 first wednesday");
$thu = strtotime("December 2010 first thursday");
$fri = strtotime("December 2010 first friday");
$sat = strtotime("December 2010 first saturday");
$sun = strtotime("December 2010 first sunday");
echo strftime("%m/%d/%y", $mon) . "<br>";
echo strftime("%m/%d/%y", $tue) . "<br>";
echo strftime("%m/%d/%y", $wed) . "<br>";
echo strftime("%m/%d/%y", $thu) . "<br>";
echo strftime("%m/%d/%y", $fri) . "<br>";
echo strftime("%m/%d/%y", $sat) . "<br>";
echo strftime("%m/%d/%y", $sun) . "<br>";
Resultados en:
12/06/10
12/07/10
12/08/10
12/02/10
12/03/10
12/04/10
12/05/10
Aviso algo? ¿No debería un día de la semana coincidir con el 1 ° del mes? Pero nunca lo hace, y en su lugar, la segunda instancia del día, el día 8, siempre se devuelve.
¿Alguien tiene una explicación para esto?
por supuesto, esto funciona. No preguntemos por qué ... – Yarin
Bueno, podrías mirar el código fuente de php si eres realmente curioso, en cuanto a mí, sigamos adelante: D –
Parece que no funciona del todo. Estoy utilizando esta solución el 12 de junio y recibo '12/15/2014'. Tal vez es relativo a la semana del mes en que se encuentra actualmente? – Webnet