我想將日期時間轉換為大整數。例如。我在檔案中有一個條目,我像正常的日期時間一樣在 php 中讀取,"2021/05/20 11:46"(我將它保存在一個名為 $data 的變數中),我想將其轉換為像202105201146(year month day hour minute)這樣的 bigint 。我試圖解決并使其作業,但我仍然收到錯誤:
“引數#2 ($timestamp) 的型別必須是 ?int, string given in”。>
有問題的行是:
$ID= date('Y', $data) . date('m', $data) . date('d', $data). date('G', $data) . date('i', $data). date('s', $data);
uj5u.com熱心網友回復:
您必須首先將其轉換為日期時間物件,然后將其格式化為“bigint”:
$dateAsString = '2021/05/20 11:46';
$datetime = \DateTime::createFromFormat('Y/m/d h:i', $dateAsString);
echo $datetime->format('Ymdhi'); // 202105201146
但是,由于錯誤要求提供時間戳(作為 int 值),因此最好使用回傳紀元時間戳getTimestamp()的DateTime類方法:
$dateAsString = '2021/05/20 11:46';
$datetime = \DateTime::createFromFormat('Y/m/d h:i', $dateAsString);
$timestamp = $datetime->getTimestamp(); // 1621511160
uj5u.com熱心網友回復:
假設月、日、小時和分鐘總是零填充,只需替換“字串”中的所有非數字:
echo preg_replace("/\\D /", "", "2021/05/20 11:46");
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/352717.html
