2014-06-08 82 views
0

我只是嘗試設置輸入值的日期時間(這是爲了改變當前值的變量日期時間),但我的HTML顯示錯誤(似乎是關於格式的錯誤):設置輸入HTML中的日期時間值從PHP

代碼:

<input type="datetime" name="deadline" required value ='<?php echo date('c', $dateDeadline); ?>'/>

THX了很多。

+0

您當前的代碼,'$ dateDeadline'是未定義的,可能不是b e在unix時間 – user1978142

+0

$ dateDeadline的值是'2014-06-21 12:32:0' – user3157778

+0

如果定義了,你應該用'<?php echo date('c',strtotime($ dateDeadline) );' – user1978142

回答

0

如果$dateDeadiline確實被定義,您應該strtotime()包裹。

manual

string date (string $format [, int $timestamp = time() ])

你應該提供一個timestamp,而不是字符串的日期。考慮下面這個例子:

<?php 
$dateDeadiline = '2014-06-21 12:32:00'; 
?> 
<input type="datetime" name="deadline" required value="<?php echo date('c', strtotime($dateDeadiline)); ?>" /> 

使用DateTime類具有時區:

<?php $date = new DateTime('2014-06-21 12:32:00', new DateTimeZone('America/New_York')); ?> 
<input type="datetime" name="deadline" required value="<?php echo $date->format('c'); ?>" /> 

有關支持的時區的列表,你可以檢查此鏈接:在

http://www.php.net//manual/en/timezones.php

+0

如果我想設置日期時間區域?我嘗試轉換成相同的格式,但輸入不顯示它。如果我在另一個網站上顯示日期格式與輸入要求相同: 21/06/2014 12:32並且輸入要求dd/mm/aa - : - – user3157778

+0

@ user3157778如果要設置時區你可能想看看'DateTime'類,因爲它比這個當前的解決方案更加靈活。檢查我的編輯 – user1978142

0

您正在使用與您的PHP代碼衝突的值屬性的單引號。試試這個:

<input type="datetime" name="deadline" required value="<?php echo date('c', $dateDeadline); ?>" /> 
相關問題