1
icyflash Jan 12, 2012
date_format(date_create_from_format('Ym', 201112), 'Y-m')
|
2
summic OP 我之前的实现实和两次 substr,感觉很ugly
|
3
loning Jan 12, 2012
echo number_format(201112/100,2,'-','');
有点蛋疼,没C#舒服.. |
5
reus Jan 12, 2012 via Android
substr有什么ugly的呢,这种洁癖要不得啊要不得
|
6
vibbow Jan 12, 2012
每一个优雅的接口后面都有一个龌龊的实现~
|
7
webgeekman Jan 12, 2012
看看这个方法怎么样:echo date('Y-m',strtotime($yourDateFromDB.'01'));
|
9
loning Jan 13, 2012
其实压根数据库就不该这样存...
|
10
ywjno Jan 13, 2012
用正则试试?
|
11
sarices Jan 13, 2012
...你直接纯time(),然后用d()转换就可以了,何必将日期去“-”再存?省事很多
|
12
sarices Jan 13, 2012
打错了,一直自定义一个d()函数用作时间转换,应该是date()才对
|
13
glume Jan 13, 2012
顶楼上。日期都存为UNIX时间。使用的时候可以用各种自定义的函数转嘛,还能搞成多少小时多少天之前这种。
|
16
avatasia Jan 13, 2012
dt / 100 + "-" + dt %100 最高
|
17
Hyperion Jan 13, 2012
echo rtrim(chunk_split("201112", 4, "-"), "-");
-_- |
18
forerunner Mar 9, 2012
@avatasia 话说“20121”这个蛋疼的问题依旧蛋疼~
感觉还是substr +1一下 |
19
avatasia Mar 9, 2012
|
24
chairo Mar 14, 2012
@xwsoul 用php把'xxx-xx-xx 00:00:00'和'xxx-xx-xx 23:59:59'转换成unix时间戳,然后sql中>=和<=不就可以了?这样效率还会差?在这列做索引都没问题
|
25
benzhe Mar 14, 2012
正则是个好同志
preg_replace('/(\d{4})(\d+)/','$1-$2',201012); |
27
guoquan Mar 15, 2012
我觉得……你应该优雅的别这么存……
|
28
chairo Mar 15, 2012
@xwsoul 当然时间戳不一样啊,怎么可能一样...不过前边我有个错误应该是'xxxx-xx-xx 00:00:00'和'xxxx-xx-xx 23:59:59'格式转成时间戳,年那少了一位...
|
31
cute Mar 23, 2012
echo wordwrap('201112', 4, '-', true);
|
32
cute Mar 23, 2012
或者echo substr_replace('201112', '-', 4, 0);
|
33
airylinus Apr 12, 2012 via Android
如果要谈论优雅,所有世界都存储为int
|