2012-02-16 69 views
0
global $adb;         

$sql = 'SELECT * from vtiger_invoice where invoiceid = ?'; 
$result = $adb->pquery($sql,array($_REQUEST['record'])); 
$fecha=$adb->query_result($result,$i,'invoicedate'); 

for($i=0;$i<sizeof($vencimientos);$i++) 
{ 
$date[$i] = date_create($fecha); 
date_add($date[$i], date_interval_create_from_date_string($periodicidad.' days')); 
$fechafinal = explode(" ",$date[$i]->date); 
$splitdate = explode("-",$fechafinal[0]); 
$reversedate = array_reverse($splitdate); 
$fechafinal = implode("-",$reversedate);      

$pdf->MultiCell(100, $summaryCellHeight , $fechafinal, '', 'L', 0, 1, $summaryLineX+135, $summaryLineY); 

$summaryLineY += 4; 
} 

問題是這個代碼不工作,或者至少$ fechafinal沒有得到價值。即時調試時,所有工作100%,但是當我執行不工作。日期函數的PHP問題

我試過把'睡覺',但不工作太。

我該怎麼辦?這很奇怪,因爲我無法找到錯誤的原因時,即時通訊調試所有作品:/

+0

當你說debbugging,你在做什麼? $ fecha = $ adb-> query_result($ result,$ i,'invoicedate'); ' – 2012-02-16 12:34:33

+0

你想達到什麼目的?你的模式數據是什麼樣的?你期待什麼輸出/最終結果? – liquorvicar 2012-02-16 12:41:31

回答

1

我認爲這個問題可能在於該行:

$fechafinal = explode(" ",$date[$i]->date); 

一個DateTime對象沒有任何公共成員日期,以便您在那裏沒有任何字符串。你想使用的是format()。

隨着格式()你可以替換這些四行:

$fechafinal = explode(" ",$date[$i]->date); 
$splitdate = explode("-",$fechafinal[0]); 
$reversedate = array_reverse($splitdate); 
$fechafinal = implode("-",$reversedate); 

有:

$fechafinal = $date[$i]->format('d-m-Y'); // Change the formatting to what you need. 
+0

Pfffffffffffffffff ..........那真是個了不起的傢伙。非常感謝。這工作100%完美。再次感謝你,讓我度過了一天。 – 2012-02-18 18:47:00