echo date("w",strtotime(date("Y-m-d")));
echo date("w",strtotime(date("Y年m月d日")));
将其保存为utf8。您会看到第二个比第一个更大。
答案 0 :(得分:2)
面膜,
很可能是因为strtotime无法正确解析日语格式化日期。
在我看来,通过阅读文档,它将接受使用-
格式化的日期,但未明确说明。
尝试var_dump(strtotime(date("Y年m月d日"));
给false
,就像文档中strtotime
似乎无法解析它一样。
所以约会适用false
,但不会给出相同的结果。
答案 1 :(得分:2)
如果“更大”意味着“它使用更多字节”,那么UTF8就是一个具有可变字符大小的编码。 A - 字符将使用一个字节进行编码,而Year将使用至少两个进行编码。见这里:http://en.wikipedia.org/wiki/Utf8
答案 2 :(得分:1)
主要问题是strtotime是以美国格式开出的有效日期(在此处http://php.net/manual/en/function.strtotime.php}
要解决此问题,您可以使用strftime函数
echo date("w",strftime(date("Y年m月d日")));
echo date("w",strftime(date("Y-m-d")));
答案 3 :(得分:0)
当用UTF-8表示时,亚洲字符占用2个或更多字节,而破折号只占用一个字节。