[英]How to do auto convert for php date format?
我最近有一個用於簡單壓光機拾取的PHP編碼。 但是它的日期格式為mm / dd / yy。 無論如何,我可以將其自動轉換為yy-mm-dd嗎? 我聽說使用strtotime可以在它進入數據庫時自動更改它,但是我不知道如何以及在何處添加代碼。 我嘗試在主頁上添加strftime("%Y-%m-%d", strtotime($Date))
,但我不知道在何處添加此內容,但所有位置均無效。 有什么幫助嗎? 非常感謝您的幫助。
這大致是我主頁上的樣子:
if(isset($_POST["insert_click"]))
{
$Date=$_POST["Date"];
strftime("%Y-%m-%d", strtotime($Date)); //I tried putting it here but it does not work
$Time=$_POST["Time"];
$query=$connect->prepare("insert into Booking(Date, Time) values (?,?)");
$query->bind_param('ss', $Date, $Time);
$query->execute();
}
這大致是我的表單頁面中的樣子:
<tr>
<td>Date:</td>
<td>
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery UI Datepicker - Format date</title>
<link rel="stylesheet" href="http://code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css" />
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>
<link rel="stylesheet" href="/resources/demos/style.css" />
<script>
$(function()
{
$( "#datepicker" ).datepicker({minDate:0});
$( "#format" ).change(function()
{
$( "#datepicker" ).datepicker();
});
});
</script>
</head>
<body>
<input type="text" id="datepicker" size="30" name="Date"/>
</body>
</html>
</td>
</tr>
問題是您需要將日期轉換的結果保存到變量中。 這個說法:
strftime("%Y-%m-%d", strtotime($Date));
將進行日期轉換並返回轉換后的日期,但將單獨保留$Date
。
要解決此問題,您需要通過將結果存儲到變量來捕獲結果:
$Date = strftime("%y-%m-%d", strtotime($Date));
另外,由於您需要yy-mm-dd,因此請使用%y
而不是%Y
。
您的行strftime("%Y-%m-%d", strtotime($Date));
是正確的。 您只是忘記了將此函數的返回值分配給變量。 您將需要這樣的東西:
$newDate = strftime("%Y-%m-%d", strtotime($Date));
如果您不再需要原始日期,也可以執行以下操作:
$Date = strftime("%Y-%m-%d", strtotime($Date));
注意:這些天來,對於數據庫或HTML的<time datetime="bla"></time>
標記中使用的PHP時間格式,您可能很懶。 “正常”時間格式和本地化時間格式都為您提供了生成常用時間值組合的捷徑,例如:
c
%F
for strftime() 一種選擇是使用本機日期函數,如下所示:
$Date=DATE('y-m-d, strtotime($_POST["Date"]));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.