如何 运行 在每周的特定日期运行?
How to run function on specific days of every week?
基本上,我试图 运行 在每周的特定几天运行一个函数。我很难输入文字,所以我会用一张图片划掉我想要 运行 的日子。尽管我会尽力实现我想要实现的目标以及到目前为止我所做的。到目前为止,这是我的方法,首先我要获取当前日期、月份的周数和工作日(周一为 1,周日为 7)。所以我只能在一月份做对,但不能在接下来的几个月做对,因为它每个月都会重置。例如,我在 1 月 31 日 运行ning 函数然后在下个月它不应该 运行 在星期一在 2 月的第一周而不是应该 运行ning 在星期二和星期四,因为它已经 运行 按照上个月的模式在 1 月 31 日星期五运行。我可以知道我是否在正确的轨道上吗?如果有人有建议或意见,这对我学习这个概念会有帮助。 (发送邮件是我想要的功能运行)。
$date = date("Y-m-d");
$week = ceil( date( 'j', strtotime( $date ) ) / 5 );
$working_days = (date('N', strtotime($date)));
if($week == 1 || $week == 3 || $week == 5){
if($working_days == 1 || $working_days == 3 || $working_days == 5){
sendEmail($to, $title, $content, $content1);
//echo("week " .$week." -> "."1 => ".$working_days."<br>");
//echo("send");
}
else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}
else{
if($working_days == 2 || $working_days == 4){
sendEmail($to, $title, $content, $content1);
//echo("week ".$week."-> "."2 => ".$working_days."<br>");
//echo("send");
}
else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}
这应该可以做到。
我使用日期 W 查看周数,看看它是偶数还是非偶数。
这就是周之间的区别。
$date = "2020-01-06";
echo $week = date( 'W', strtotime( $date ) );
$working_days = date('N', strtotime($date));
if($week % 2 == 1){
if($working_days == 1 || $working_days == 3 || $working_days == 5){
sendEmail($to, $title, $content, $content1);
//echo("week " .$week." -> "."1 => ".$working_days."<br>");
//echo("send");
} else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}else{
if($working_days == 2 || $working_days == 4){
sendEmail($to, $title, $content, $content1);
//echo("week ".$week."-> "."2 => ".$working_days."<br>");
//echo("send");
}else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}
基本上,我试图 运行 在每周的特定几天运行一个函数。我很难输入文字,所以我会用一张图片划掉我想要 运行 的日子。尽管我会尽力实现我想要实现的目标以及到目前为止我所做的。到目前为止,这是我的方法,首先我要获取当前日期、月份的周数和工作日(周一为 1,周日为 7)。所以我只能在一月份做对,但不能在接下来的几个月做对,因为它每个月都会重置。例如,我在 1 月 31 日 运行ning 函数然后在下个月它不应该 运行 在星期一在 2 月的第一周而不是应该 运行ning 在星期二和星期四,因为它已经 运行 按照上个月的模式在 1 月 31 日星期五运行。我可以知道我是否在正确的轨道上吗?如果有人有建议或意见,这对我学习这个概念会有帮助。 (发送邮件是我想要的功能运行)。
$date = date("Y-m-d");
$week = ceil( date( 'j', strtotime( $date ) ) / 5 );
$working_days = (date('N', strtotime($date)));
if($week == 1 || $week == 3 || $week == 5){
if($working_days == 1 || $working_days == 3 || $working_days == 5){
sendEmail($to, $title, $content, $content1);
//echo("week " .$week." -> "."1 => ".$working_days."<br>");
//echo("send");
}
else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}
else{
if($working_days == 2 || $working_days == 4){
sendEmail($to, $title, $content, $content1);
//echo("week ".$week."-> "."2 => ".$working_days."<br>");
//echo("send");
}
else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}
这应该可以做到。
我使用日期 W 查看周数,看看它是偶数还是非偶数。
这就是周之间的区别。
$date = "2020-01-06";
echo $week = date( 'W', strtotime( $date ) );
$working_days = date('N', strtotime($date));
if($week % 2 == 1){
if($working_days == 1 || $working_days == 3 || $working_days == 5){
sendEmail($to, $title, $content, $content1);
//echo("week " .$week." -> "."1 => ".$working_days."<br>");
//echo("send");
} else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}else{
if($working_days == 2 || $working_days == 4){
sendEmail($to, $title, $content, $content1);
//echo("week ".$week."-> "."2 => ".$working_days."<br>");
//echo("send");
}else{
echo("week " .$week." -> "."1 => ".$working_days."<br>");
echo("do not send");
}
}