2012-05-19 47 views
0

爲什麼第一個示例代碼可以正常工作,而第二個示例代碼可以正常工作?PHP:使用「Y-m-d H:i」的日期格式化

SolDate等於2010-10-10,depT 10:15:00和arrT 11:30:15。我正在使用功能strtotimedepTarrT中刪除秒。

$i = 0; 
    foreach ($result1 as $row): 
     $data[] = array($i,array('xxx','yyy','zzz'), 
     "2010-10-10 10:15", 
     "2010-10-10 11:30"); 
     $i++; 
    endforeach; 

第二

$i = 0; 
     foreach ($result1 as $row): 
      $data[] = array($i,array('xxx','yyy','zzz'), 
      date("Y-m-d H:i", strtotime($row['SolDate'] . ' ' . $row['depT'])), 
      date("Y-m-d H:i", strtotime($row['SolDate'] . ' ' . $row['arrT']))); 
      $i++; 
     endforeach; 

我使用JpGraph的創建甘特圖此代碼。問題是第一種方法生成甘特圖,而第二種方法會生成以下錯誤消息:

JpGraph錯誤6007:自動甘特圖大小的統一檢查失敗。寬度(= 1348)或高度(= 35667)大於MAX_GANTTING_SIZE。

+0

你沒有在你的循環塊中使用大括號的具體原因是什麼?還有什麼具體不起作用?你有什麼錯誤嗎? – Lix

+2

這個錯誤是....? –

+0

對於基本上是字符串操作使用'strtotime()'是低效的矯枉過正。我只是'爆炸()'/'array_pop()','strstr()'或'substr()'/'strpos()'如果我是你的... – DaveRandom

回答

0

您的示例並不清晰,因爲您正在使用2010-10-10,但第二個示例中您在第5行有date("Y-m-m ...")。這可能會拋出錯誤?

+0

哦,應該有Y-m-d。對不起,忘了。 –