1

我有一列存储星期几的 1 位值:

0 = Sunday
1 = Monday
...
6 = Saturday

我尝试了 PHPdate('l', $row['dow'])和 MySQL DATE_FORMAT(dow, '%w'),但都没有返回星期几字。

是否可以在 PHP 或 MySQL 中执行此操作,或者我只需要创建一个 array() var?

4

4 回答 4

2

您需要完整的日期/时间戳才能使任何日期格式化功能正常工作。只是“1”或“2”对这些函数没有任何意义(或者至少不是你想要的意思)。如果您要存储完整的时间戳,则无需再次单独存储星期几。否则,您需要自己将那些原本毫无意义的数字翻译成一个词。

于 2012-10-22T14:24:36.290 回答
2
$dow = date('l', strtotime("Sunday +{$row['dow']} days"));

演示:http ://codepad.viper-7.com/LzZDHf

于 2012-10-22T14:22:49.430 回答
1

date( 'l' )

l (lowercase 'L') - A full textual representation of the day of the week - Sunday through Saturday

你应该使用日期('w'):

w - Numeric representation of the day of the week - 0 (for Sunday) through 6 (for Saturday)

编辑:啊,所以你想要(仅)数字的文本表示。那么一张简单的地图就足够了:

$dayNames = array( 'Sunday', 'Monday', ..., 'Saturday' );
$day = $dayNames[$row['dow']];
于 2012-10-22T14:21:24.770 回答
0

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

这是php日期格式的所有代码

从您的数据库中选择您的日期和 php 使用日期('l', strtotime($date))

于 2012-10-22T14:21:11.183 回答