使用 implode 和 stropos 将日期放入数组
Date into array with implode and stropos
我有一个日期输入 javascript 允许用户一次将尽可能多的日期添加到数据库中,这是使用内爆并存储为一个大字符串,如 2015-01-01 2015-01-02 等...
我还想让它查明其中一天是否包含周末。我不知道字符串和日期参数如何与此相符。
$week_end_check = array();
$week_end_check = implode(' ',date('D'), strtotime($_POST['dates']));
if ((strpos($week_end_check,'Sun')) || (strpos($week_end_check,'Sat' ))) {
$weekend = '1';
}
据我所知,上面的方法行不通,但是有人可以帮助我吗...我希望你可以通过上面的方法理解我所追求的。
这里有一个不那么做作的方法:
$weekend = false;
foreach($_POST['dates'] as $date) {
$day = (new DateTime($date))->format('D');
if (in_array($day, array('Sun', 'Sat'))) {
$weekend = true;
break;
}
}
- 默认将
$weekend
设置为 false
- 遍历每个日期
- 获取星期几
- 检查它是"Sun"还是"Sat"
- 将
$weekend
设置为true
- 一旦找到周末就结束循环
请使用这个例子。 .
$string = "2015-01-01 2015-01-02 2015-01-04 2015-01-06";
$array = explode(" ",$string);
$weekend_array = array();
$total = count($array);
for($i=0;$i<$count;$i++)
{
$my_day = date("D", strtotime($array[$i]));
if($my_day=="Sun" || $my_day=="Sat")
{
$weekend_array[] = $array[$i];
}
}
echo "<pre>";
print_r($weekend_array);
echo "<pre>";
我有一个日期输入 javascript 允许用户一次将尽可能多的日期添加到数据库中,这是使用内爆并存储为一个大字符串,如 2015-01-01 2015-01-02 等...
我还想让它查明其中一天是否包含周末。我不知道字符串和日期参数如何与此相符。
$week_end_check = array();
$week_end_check = implode(' ',date('D'), strtotime($_POST['dates']));
if ((strpos($week_end_check,'Sun')) || (strpos($week_end_check,'Sat' ))) {
$weekend = '1';
}
据我所知,上面的方法行不通,但是有人可以帮助我吗...我希望你可以通过上面的方法理解我所追求的。
这里有一个不那么做作的方法:
$weekend = false;
foreach($_POST['dates'] as $date) {
$day = (new DateTime($date))->format('D');
if (in_array($day, array('Sun', 'Sat'))) {
$weekend = true;
break;
}
}
- 默认将
$weekend
设置为false
- 遍历每个日期
- 获取星期几
- 检查它是"Sun"还是"Sat"
- 将
$weekend
设置为true
- 一旦找到周末就结束循环
请使用这个例子。 .
$string = "2015-01-01 2015-01-02 2015-01-04 2015-01-06";
$array = explode(" ",$string);
$weekend_array = array();
$total = count($array);
for($i=0;$i<$count;$i++)
{
$my_day = date("D", strtotime($array[$i]));
if($my_day=="Sun" || $my_day=="Sat")
{
$weekend_array[] = $array[$i];
}
}
echo "<pre>";
print_r($weekend_array);
echo "<pre>";