我是一个php/mysql新手,所以我一直在用我通常在页面上显示的日期格式插入日期,比如:
Saturday, June 19, 2010以纯文本形式直接存入数据库。但我见过人们以其他方式输入它,然后使用一些php函数以各种格式显示相同的记录。有什么方法可以做到这一点,这样我就可以在数据库中有一条记录,并以各种格式显示它,例如:
6/19/2010
June 19, 2010
Saturday, June 19, 2010等等。
问题的第二部分
如何用钱做同样的事情呢?
发布于 2010-06-20 09:02:30
您应该将数据存储为MYSQL日期时间字段。然后使用php按照你想要的方式格式化数据。
至于价格,我建议你用美分储存。这样你就可以很容易地把它兑换成其他货币了。
发布于 2010-06-20 09:02:32
我自己将其存储为unix时间戳。
函数time()返回unix时间戳。
并在此处检查date()函数:
http://php.net/manual/en/function.date.php
它有两个参数:您希望它显示的格式和unix时间戳。
发布于 2010-06-20 10:02:11
如何处理、存储、更改日期php + mysql
对于日期,只需将它们保存为DATETIME即可。它很容易阅读,也很容易在PHP中使用。您也可以选择使用纯TIMESTAMP,但我不建议您这样做。
DATETIME的范围...
'1000-01-01 00:00:00‘到'9999-12-31 23:59:59’。
时间戳的范围...
'1970-01-01 00:00:01‘UTC至'2038-01-19 03:14:07’
不仅如此,你还有很多内置的MYSQL函数可以使用DATETIME,比如INTERVAL,它可以让你做很多很棒的事情。
// easy pull all comments values from within a range
SELECT * FROM your_table
WHERE your_date_field = DATE_SUB('2001-01-01 12:12:12' + INTERVAL 15 DAYS;如果你确实需要在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 EURhttps://stackoverflow.com/questions/3077827
复制相似问题