echo $current_year = date("Y").'<br><br>';
echo $string_year = strftime("%Y", strtotime($current_year));
我想將date(Year)
更改爲字符串,但此代碼顯示輸出爲1970
。我不明白爲什麼是1970
?如何更改字符串php中的日期類型年?
如何使當年爲2016
。 請幫忙。
echo $current_year = date("Y").'<br><br>';
echo $string_year = strftime("%Y", strtotime($current_year));
我想將date(Year)
更改爲字符串,但此代碼顯示輸出爲1970
。我不明白爲什麼是1970
?如何更改字符串php中的日期類型年?
如何使當年爲2016
。 請幫忙。
整個日期應該在strtotime()內傳遞,而不僅僅是一年。或者您可以簡單地將時間戳作爲第二個參數。
試試這個:
echo $string_year = strftime("%Y", time());
OR
echo $string_year = strftime("%Y", strtotime("now"));
你的問題是,strftime
功能需要一個timestamp
作爲第二PARAM,但你傳遞一個字符串。
=> string strftime (string $format [, int $timestamp = time() ])
因此,當你通過date("Y").'<br>'
技術上這不是一個timestamp
了,這將默認爲1年,我們的PHP被1970年
工作在做
echo $current_year = date("Y");
echo $string_year = strftime("%Y", strtotime($current_year));
我得到2016
但老實說,我不明白你爲什麼要求這一年,然後再將它改爲一年,因爲$current_year
和$string_year
都是字符串。
echo $current_year = date("Y");
echo $string_year = strftime("%Y", strtotime($current_year));
echo gettype($current_year); //Output: string
echo gettype($string_year); //Output: string
這是您的服務器的問題,因爲日期(「Y」);'應該返回2016 – Hearner
爲什麼複雜的東西?爲什麼不只是'echo $ string_year = strftime(「%Y」);'而不是?當你到了1970年,這意味着該日期無效,所以它返回01-01-1970。 – Qirel
請解釋一下你在第一個回聲和第二個回聲中看到了什麼?你從strtotime('2016')期待什麼? – PaulH