我尝试将字符串放到$qDateTime
并打印出来。
我希望结果是Array ( [0] => 2013-12-16 08:38:33 [1] => 2013-12-16 08:44:58 )
。
但它打印Array ( [0] => 2013 [1] => 2013 )
。
$temp
可以像2013-12-16 08:38:332013-12-16 08:44:58
一样正确打印出来。
$qDateTime = array();
$query = "SELECT joinDateTime FROM queueItem WHERE uid = '".$uid."' AND isValid = true;";
$result = mysql_query($query) or die("Fail");
while($array = mysql_fetch_array($result)){
$temp = $array['joinDateTime'];
$qDateTime[] += $temp;
echo $temp;
}
print_r($qDateTime);
答案 0 :(得分:3)
$temp = $array['joinDateTime'];
$qDateTime[] += $temp;
echo $temp;
您错误地将数据分配给数组:
$qDateTime[] += $temp;
应该是:
$qDateTime[] = $temp;
因为您在代码中使用+=
,所以PHP将日期字符串转换为整数,并将其用于结果;因此,2013-12-16 08:38:332013-12-16
正变为2013
。
答案 1 :(得分:0)
您应该使用$qDateTime[] = $temp;
代替$qDateTime[] += $temp;
while($array = mysql_fetch_array($result)){
$temp = $array['joinDateTime'];
$qDateTime[] = $temp;
echo $temp;
}
var_dump($qDateTime);
答案 2 :(得分:0)
将数据分配给数组的方式不正确。它应该是,
$qDateTime[] = $temp; instead of $qDateTime[] += $temp;
print_r($qDateTime);
所以正确的代码必须是,
$qDateTime = array();
$query = "SELECT joinDateTime FROM queueItem WHERE uid = '".$uid."' AND isValid = true;";
$result = mysql_query($query) or die("Fail");
while($array = mysql_fetch_array($result)){
$temp = $array['joinDateTime'];
$qDateTime[] = $temp;
echo $temp;
}
print_r($qDateTime);