GVKun编程网logo

php – 时间选择器返回null值,如果开始和结束时间都相同(php日期选择框)

4

对于想了解php–时间选择器返回null值,如果开始和结束时间都相同的读者,本文将是一篇不可错过的文章,我们将详细介绍php日期选择框,并且为您提供关于C#获取两个时间段之间的所有时间与获取当前时间所

对于想了解php – 时间选择器返回null值,如果开始和结束时间都相同的读者,本文将是一篇不可错过的文章,我们将详细介绍php日期选择框,并且为您提供关于C# 获取两个时间段之间的所有时间与获取当前时间所在的季度开始和结束时间、C#中方法的持续时间,时间开始和结束时间、Django查询:如何从开始和结束时间字段中找到最大持续时间?、elementUI 日期时间选择器el-date-picker开始时间与结束时间约束的有价值信息。

本文目录一览:

php – 时间选择器返回null值,如果开始和结束时间都相同(php日期选择框)

php – 时间选择器返回null值,如果开始和结束时间都相同(php日期选择框)

<input type="text" id="from"name="start_activity">

<input type="text" id="to"name="end_activity">

In script for both is :
$('#from').timepicker();
 $('#to').timepicker();

我在表单中有两个时间选择器,但是当我将开始时间和结束时间保存为相同时,就像开始是下午4点并结束也是下午4点然后它在结束时从数据库中获取值时返回空值.

解决方法

你可以使用Array.filter:

...
events: <?= $response ?>.filter(function(x) { return x.status === "1";}),...

如果你这样做(或者你拥有它的方式),请确保$response变量总是产生一个数组,即使是空的,或者你会有头疼.

C# 获取两个时间段之间的所有时间与获取当前时间所在的季度开始和结束时间

C# 获取两个时间段之间的所有时间与获取当前时间所在的季度开始和结束时间

一:C# 获取两个时间段之间的所有时间

public List<string> GetTimeList(string rq1, string rq2)
{
  List<string> timeList = new List<string>();
  // 首先保证 rq1<=rq2
  DateTime time1 = Convert.ToDateTime(rq1);
  DateTime time2 = Convert.ToDateTime(rq2);
  while (time1 <= time2)
  {
  timeList.Add(time1.ToString("yyyy-MM-dd"));
  time1 = time1.AddDays(1);
  }
  return timeList;
}

使用:

List<string> sjList = GetTimeList(sj1, sj2);

 

二:获取当前时间所在季度的开始和结束时间

// 本季度

private List<string> FunSelectSJNow(string jd)
{
  List<string> lis = new List<string>();
  string NowYear = jd.Substring (0, 4); // 截取当前年份
  string Nowjd = jd.Substring (jd.Length - 2, 2); // 截取当前季度
  string StartTime = ""; // 当前季度的开始时间
  string endTime = ""; // 当前季度的结束时间

  if (Nowjd == "01")
  {
    StartTime = "-01-01";
    endTime = "-03-01";
  }
  if (Nowjd == "02")
  {
    StartTime = "-04-01";
    endTime = "-06-01";
  }
  if (Nowjd == "03")
  {
    StartTime = "-07-01";
    endTime = "-09-01";
  }
  if (Nowjd == "04")
  {
    StartTime = "-10-01";
    endTime = "-12-01";
  }
  StartTime = NowYear + StartTime;
  endTime = NowYear + endTime;
  lis.Add(StartTime);
  lis.Add(endTime);
  return lis;
}

 

// 上季度

private List<string> FunSelectLastSJ(string jd)
{
  List<string> lis = new List<string>();
  string NowYear = jd.Substring (0, 4); // 截取当前年份
  string Nowjd = jd.Substring (jd.Length - 2, 2); // 截取当前季度
  string StartTime = ""; // 上季度的开始时间
  string endTime = ""; // 上季度的结束时间
  string endYear = ""; // 上季度年
  string endjd = ""; // 上季度季度
  if (Nowjd == "01")
  {
    endYear = (Convert.ToInt32(NowYear) -1).ToString() ;
    endjd = "Q4";
  }
  if (Nowjd == "02")
  {
    endYear = NowYear;
    endjd = "Q1";
  }
  if (Nowjd == "03")
  {
    endYear = NowYear;
    endjd = "Q2";
  }
  if (Nowjd == "04")
  {
    endYear = NowYear;
    endjd = "Q3";
  }

  if (endjd == "Q1")
  {
    StartTime = "-01-01";
    endTime = "-03-01";
  }
  if (endjd == "Q2")
  {
    StartTime = "-04-01";
    endTime = "-06-01";
  }
  if (endjd == "Q3")
  {
    StartTime = "-07-01";
    endTime = "-09-01";
  }
  if (endjd == "Q4")
  {
    StartTime = "-10-01";
    endTime = "-12-01";
  }
  StartTime = endYear + StartTime;
  endTime = endYear + endTime;
  lis.Add(StartTime);
  lis.Add(endTime);
  return lis;
}

 

使用:

List<string> li = FunSelectSJNow(NowTime);
rq1 = li[0];
rq2 = li[1];

 

//jd: Q1,Q2,Q3,Q4 (四个季度)
List<string> li = FunSelectLastSJ(jd);
rq1 = li[0];
rq2 = li[1];

C#中方法的持续时间,时间开始和结束时间

C#中方法的持续时间,时间开始和结束时间

如何使用c#执行方法时,如何记录方法的持续时间,时间开始和结束时间?

例如,我点击一个按钮,它会做一些事情.一旦开始,我将获得开始时间,然后当执行完成时,我将得到时间结束以及完成所需的持续时间.

解决方法

您可以使用驻留在System.Diagnostics名称空间中的 Stopwatch.

它具有普通秒表的功能,包括开始,停止,重置,经过的时间等等.

这非常适合测量特定的代码块或方法.但是,除了执行的持续时间之外,您还要说明您需要开始和结束时间.您可以通过继承Stopwatch类并使用几个DateTime属性扩展它来创建自定义秒表.

public class CustomStopwatch : Stopwatch
    {

        public DateTime? StartAt { get; private set; }
        public DateTime? EndAt { get; private set; }


        public void Start()
        {
            StartAt = DateTime.Now;

            base.Start();
        }

        public void Stop()
        {
            EndAt = DateTime.Now;

            base.Stop();
        }

        public void Reset()
        {
            StartAt = null;
            EndAt = null;

            base.Reset();
        }

        public void Restart()
        {
            StartAt = DateTime.Now;
            EndAt = null;

            base.Restart();
        }

    }

并像这样使用它:

CustomStopwatch sw = new CustomStopwatch();
sw.Start();
Thread.Sleep(2342); // just to use some time,logic would be in here somewhere.
sw.Stop();
Console.WriteLine("Stopwatch elapsed: {0},StartAt: {1},EndAt: {2}",sw.ElapsedMilliseconds,sw.StartAt.Value,sw.EndAt.Value);

Django查询:如何从开始和结束时间字段中找到最大持续时间?

Django查询:如何从开始和结束时间字段中找到最大持续时间?

这是我的Django模型:

class Shift(models.Model):        worker = models.OneToOneField(''Worker'',null=True)        date = models.DateField(null=True)        shiftTime = models.CharField(max_length=10, default="N/A")        timeIn = models.TimeField(null=True)        timeOut = models.TimeField(null=True)

我需要找到一个在给定日期范围内在办公室花费最多时间的工人。如何从Django查询中的timeIn和timeOut字段计算持续时间?

编辑:我不想使用另一个属性 持续时间, 因为这似乎是多余的。除了使用原始查询或持续时间属性,还有其他方法吗?

答案1

小编典典

Django
1.10引入了通过ORM本地执行日期/时间差异的功能。此查询将为您提供最长的转变:

from django.db.models import DurationField, ExpressionWrapper, Flongest_shift = Shift.objects.annotate(shift_length=ExpressionWrapper(                                           F(''timeOut'') - F(''timeIn''),                                           output_field=DurationField()))\.                                           order_by(''-shift_length'').first()

您可以根据需要filter()在之前添加一个子句,以针对特定日期范围添加过滤条件annotate()

elementUI 日期时间选择器el-date-picker开始时间与结束时间约束

elementUI 日期时间选择器el-date-picker开始时间与结束时间约束

主要思路:
el-date-picker组件需要 :picker-options属性,属性值为data,data的数据来自于methods中的方法。


##template代码

<el-form-item label="开始时间" prop="startTime" >
<el-date-picker v-model="form.startTime" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" clearable
:picker-options="startDatePicker" :disabled="dialogStatus==''view''" type="datetime" :placeholder="dialogStatus==''view''?'''':''请输入订阅开始时间''"></el-date-picker>
</el-form-item>
<el-form-item label="结束时间" prop="endTime">
<el-date-picker v-model="form.endTime" format="yyyy-MM-dd HH:mm:ss" value-format="yyyy-MM-dd HH:mm:ss" clearable
:picker-options="endDatePicker" :disabled="dialogStatus==''view''" type="datetime" :placeholder="dialogStatus==''view''?'''':''请输入订阅结束时间''"></el-date-picker>
</el-form-item>

##data数据
data() {
return {
startDatePicker: this.beginDate(),
endDatePicker: this.processDate(),
  }
}

##methods方法

beginDate(){
const self = this
return {
disabledDate(time){
if (self.form.endTime) { //如果结束时间不为空,则小于结束时间
return new Date(self.form.endTime).getTime() < time.getTime()
} else {
// return time.getTime() > Date.now()//开始时间不选时,结束时间最大值小于等于当天
}
}
}
},
processDate() {
const self = this
return {
disabledDate(time) {
if (self.form.startTime) { //如果开始时间不为空,则结束时间大于开始时间
return new Date(self.form.startTime).getTime() > time.getTime()
} else {
// return time.getTime() > Date.now()//开始时间不选时,结束时间最大值小于等于当天
}
}
}
}

附加:
只可以选择今天以及今天以后的时间:

pickerOptions0: {
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;//8.64e7=1000*60*60*24一天
}
},


 

# 说明。添加多个时间限制,使用||而不是&&,因为这里返回的是disabledDate
processDate() {
const self = this
return {
disabledDate(time) {
if (self.form.beginTime) { //如果开始时间不为空,则结束时间大于开始时间,且大于当前时间
return new Date(self.form.beginTime).getTime() > time.getTime() || time.getTime() < Date.now() - 1000*3600*24
} else {
return time.getTime() < Date.now() - 1000*3600*24//开始时间不选时,结束时间最大值大于等于当天
}
}
}
},

 

今天关于php – 时间选择器返回null值,如果开始和结束时间都相同php日期选择框的讲解已经结束,谢谢您的阅读,如果想了解更多关于C# 获取两个时间段之间的所有时间与获取当前时间所在的季度开始和结束时间、C#中方法的持续时间,时间开始和结束时间、Django查询:如何从开始和结束时间字段中找到最大持续时间?、elementUI 日期时间选择器el-date-picker开始时间与结束时间约束的相关知识,请在本站搜索。

本文标签: