【发布时间】:2015-04-17 09:46:19
【问题描述】:
我在 sql 中有一个表,类型是 datetime y m d h i s
我在 php 中使用 mid 来获取单独的时间和单独的日期,就像这样
mid(tablename,1,10) 只能像这样获取日期'y m d'
并使用
mid(tablename,12,8) 只能像这样获得时间'H:i:s'
这是代码解释我做了什么
<html>
<head>
<title>ss</title>
</head>
<body>
<form method='post' action='<?php $_SERVER['SELF'];?>'>
<input type='submit' name='submit' />
</form>
<?
include("config");
$submit = $_POST['submit'];
$getdata1= mysql_query("select checktime from calls");
if(isset($submit))
{
while($getdata= mysql_fetch_array($getdata1))
{
echo "<input type='text' name='text' value='mid($getdata[1],12,8)'";
}
}
?>
</body>
</html>
现在我得到这样的结果
08:00:00
08:10:00
07:00:51
等等 我需要将结果总结为
date("d H:i:s",strtotime(all result from fetch array))
所以我尝试了这个
<html>
<head>
<title>ss</title>
</head>
<body>
<form method='post' action='<?php $_SERVER['SELF'];?>'>
<input type='submit' name='submit' />
</form>
<?
include("config");
$submit = $_POST['submit'];
$getdata1= mysql_query("select checktime from calls");
if(isset($submit))
{
while($getdata= mysql_fetch_array($getdata1))
{
echo "<input type='text' name='text' value='mid($getdata[1],12,8)'";
for($i=0;$i<5;$i++)
{
$i+= strtotime($getdata[0]);
}
}
echo $i;
}
?>
</body>
</html>
但我只有最后一个结果
所以我尝试在这样的 sql 查询中这样做
<html>
<head>
<title>ss</title>
</head>
<body>
<form method='post' action='<?php $_SERVER['SELF'];?>'>
<input type='submit' name='submit' />
</form>
<?
include("config");
$submit = $_POST['submit'];
$getdata1= mysql_query("select unix_timestamp(mid(checktime,12,8)) from calls");
if(isset($submit))
{
while($getdata= mysql_fetch_array($getdata1))
{
echo "<input type='text' name='text' value='mid($getdata[1],12,8)'";
for($i=0;$i<5;$i++)
{
$i+= $getdata[0];
}
}
echo $i;
}
?>
</body>
</html>
我得到的结果不是来自1970-1-1,而是来自mid(checktime,1,10),所以我想要总结的结果是这样的:
H:i:s
从整个提取。
我的意思是,我怎样才能得出这样的结果:
08:00:00
08:10:00
07:00:51
在一个变量中?
【问题讨论】:
-
我不明白。要添加日期值,您可以将日期解析为
strtotime(),然后将结果相加并使用date()转换回日期。你也可以使用date_add()link