簡體   English   中英

如何在MySQL數據庫中顯示日期和價格,並在PHP中以各種格式顯示它

[英]How to display date and price in a MySQL database and display it in various formats in PHP

我是一個php / mysql新手所以我一直在以我在網頁上顯示日期的任何格式插入日期,例如:

Saturday, June 19, 2010

以純文本直接進入數據庫。 但我看到人們以其他方式輸入它,然后使用一些php函數以各種格式顯示相同的記錄。 有什么方法可以做到這一點,這樣我就可以在數據庫中創建一條記錄,並以各種格式顯示:

6/19/2010
June 19, 2010
Saturday, June 19, 2010

等等...

問題的第二部分

如何用錢做同樣的事情?

您應該將數據存儲為MYSQL datetime feild。 然后使用php格式化數據的方式。

至於價格我建議你把它存儲為美分。 這樣您就可以非常輕松地將其轉換為其他貨幣。

我自己將它存儲為unix時間戳。

函數time()返回一個unix時間戳。

並在此處查看date()函數:

http://php.net/manual/en/function.date.php

它需要兩個參數:您希望它顯示的格式和unix時間戳。

如何處理,存儲,更改日期php + mysql


對於日期,只需將它們保存為DATETIME 它易於閱讀,易於在PHP中使用。 你也可以選擇純TIMESTAMP但我不推薦它。

DATETIME的范圍......
'1000-01-01 00:00:00'到'9999-12-31 23:59:59'。

TIMESTAMP的范圍......
'1970-01-01 00:00:01'UTC到'2038-01-19 03:14:07'

不僅如此,你還有很多內置的MYSQL函數可以使用像INTERVAL這樣的DATETIME,它可以讓你做很棒的事情。

// pull a date from MySQL and format them to a custom format
// %A -> full weekday | %B -> full month name | %d -> month day | %Y - year 1999
$sql = "SELECT title, name, UNIX_TIMESTAMP(date) as timestamp
        FROM your_table
        WHERE your_limits";
$result = mysql_fetch_assoc(mysql_query($sql));
echo strftime("%A, %B %d, %Y", $result['timestamp']);

如果你確實需要在PHP上使用時間戳,你可以像這樣在SQL上實時獲取它們:

 // converts a DATETIME field real time to timestamps SELECT UNIX_TIMESTAMP(your_date_field) FROM your_table (...) 

當你把它們拉出來時,無論如何你都喜歡使用strftime來格式化它們。 示例下面。

 // pull a date from MySQL and format them to a custom format // %A -> full weekday | %B -> full month name | %d -> month day | %Y - year 1999 $sql = "SELECT title, name, UNIX_TIMESTAMP(date) as timestamp FROM your_table WHERE your_limits"; $result = mysql_fetch_assoc(mysql_query($sql)); echo strftime("%A, %B %d, %Y", $result['timestamp']); 


如何在MySQL中存儲貨幣


總是將它們存儲在上傳的值中。 只有在存在交易或更改時,您才能從一種貨幣轉換為另一種貨幣。 否則保留以原始價格上傳的值。

 | 135.23 | USD | | 200.35 | EUR | | 34.00 | GBP | 

顯示貨幣時,您可以實時進行轉換。 只需保留一個包含當前交換日期的單獨表格,並實時進行數學計算。 向用戶顯示您的轉化率也是一個加分。

用上述帳戶說上面的用戶想要用歐元獲得他的貨幣。

 135.23 USD = 109.39 EUR (1 USD = 0.80893059 EUR) 30 GBP = 35.90 EUR (1 GBP = 1.19681281 EUR) 200.35 EUR ----------------------- total 345.64 EUR 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM