2016-11-10 2 views
-1

У меня есть этот набор меток времени UNIX:StrToTime на сегодняшний день возвращает ложь

  1. 1473804000 1471831200

Я не смог назначить дату в этом формате ('Y-m-d H:i:s') каждой метки времени UNIX.

Мой код:

$eventhour = '1473804000'; 
$client = array(
       'pt' => $pt, 
       'eventhour' => date('Y-m-d H:i:s', $eventhour), 
       'activepower' => $avg['system.avg(activepower)'] 
      ); 

eventhour ключ пуст, я предполагаю, что функция date возвращается ложь. Временная метка unix действительна, почему она возвращает false?

Мой код Loop

foreach ($result as $row): 
     $pt = $row['pt']; 

     $statement = new \Cassandra\SimpleStatement("select avg(activepower) FROM datavalue_test_by_hour WHERE pt= :pt AND eventhour = :eventhour;"); 
     $options = new \Cassandra\ExecutionOptions(
      array('arguments' => array('pt' => $pt, 'eventhour' => $row['eventhour']))) 
     ; 
     $data = $this->cassandra->executeWithOptions($statement, $options); 
     $eventhour = $row['eventhour']; 
     echo $eventhour . PHP_EOL; 
     $avg = $data->first(); 
     $client = array(
      'pt' => $pt, 
      'eventhour' => date('Y-m-d H:i:s', $eventhour), 
      'activepower' => $avg['system.avg(activepower)'] 
     ); 
     print_r($client); 
     //fputcsv($fp, $client); 
    endforeach; 

Мой print_r():

1462554000 
Array 
(
    [pt] => AFH0AEFB0BFDEI 
    [eventhour] => 
    [activepower] => 0.02475 
) 
1474887600 
Array 
(
    [pt] => A0A0AEAF0DI0H0 
    [eventhour] => 
    [activepower] => 0.1115 
) 
1475244000 
Array 
(
    [pt] => AFH0ADE0AB0GDI 
    [eventhour] => 
    [activepower] => 0.0905 
) 
1473008400 
Array 
(
    [pt] => A0A0AEAF0GDFHB 
    [eventhour] => 
    [activepower] => 0.014 
) 
1470693600 
Array 
(
    [pt] => AFH0AEE00AF0FG 
    [eventhour] => 
    [activepower] => 0.051 
) 
1452200400 
Array 
(
    [pt] => AFH0AEE00BACIC 
    [eventhour] => 
    [activepower] => 0.152 
) 
1463637600 
Array 
(
    [pt] => AFH0ACFB00CD0F 
    [eventhour] => 
    [activepower] => 0.041 
) 
+0

$ eventhour не определен нигде в коде, который вы отправили –

+0

is $ eventhour = 1473804000? –

+0

да это! я отредактирую вопрос! –

ответ

0

Я решил эту проблему путем литья возвращаемый $row['eventhour'] из базы данных в INT.

$eventhour = (int) $row['eventhour']; 

Сейчас работает.

Смежные вопросы