obtener el último jueves antes de una fecha en PHP

Sé que hay publicaciones similares sobre cómo obtener el último jueves en PHP, pero no quiero que el último jueves se compare con la fecha actual, pero el último jueves se compara con una fecha determinada.

Por ejemplo, tengo una fecha dd / mm / aaaa y quiero el jueves anterior a esta fecha. La entrada es una cadena (el formato de la cadena aammdd) que quiero analizar para obtener el jueves anterior a esta fecha.

Gracias por tu ayuda

//Assumes it's strtotime parsable, you may need to insert // slashes with your given format eg (and use 4 digit years) $given=strtotime($dtstring); //It's just that easy ;) $thuBefore=strtotime("last thursday",$given); 

Tenga en cuenta que esto siempre será el último jueves, lo que significa que si la fecha dada es un jueves, se informará 7 días antes (pero si la fecha es un viernes, solo se informará un día antes).

 $day = date('w', $yourTime); $time = $yourTime - ($day > 4 ? ($day - 4) : ($day + 7 - 4)) * 3600 * 24; 

Donde tanto $yourTime como $time son marcas de $time Unix.

Editar: la solución de @ Rudu es mucho más simple, ¡deberías quedarte con esa :)!