2017-10-06 52 views
-3

我有這個數據 | 01十月2017 | |將字符串轉換爲DateFormat

這是印度尼西亞的日期

,我想轉換成日期格式。所以結果必須是2017-10-01。 你能幫忙嗎?

+2

http://php.net/manual/en/datetime.createfromformat.php – CBroe

+0

使用'的strtotime()'PHP函數。 –

+1

[將字符串轉換爲日期和日期時間]可能的重複(https://stackoverflow.com/questions/6238992/converting-string-to-date-and-datetime) – BenRoob

回答

-1

使用strtotime

$date = strtotime($_POST['fixtureDate']); 
    $fixtureDate = date("Y-m-j", $date); 

然後,您可以用格式播放,以便它顯示你是如何想

+0

評論應該完美地工作+僅鏈接的答案是邪惡的。想象一下,目標頁面被刪除,所以你將有一個死鏈接。將目標頁面的重要部分放入您的答案中。惠特這樣的答案你正在降低SO –

+0

的質量這是一個印度尼西亞日期,在datepicker中,語言設置爲(id)。我使用strtotime它給了我1970-01-01的結果。這是錯的 –

+0

嘿,你需要更新格式「Y-m-j」。看看這裏http://php.net/manual/en/function.date.php –

0

您需要的日期與月份名稱轉換成印度尼西亞到PHP可讀的日期格式。

function getDate($indonesianMonthName){ 

    setlocale(LC_ALL, 'en_US'); 

    $month_numbers = range(1,12); 

    foreach($month_numbers as $month) 
    $english_months[] = strftime('%B',mktime(0,0,0,$month,1,2011)); 

    setlocale(LC_ALL, 'Indonesian'); 

    foreach($month_numbers as $month) 
    $indonesian_months[] = strftime('%B',mktime(0,0,0,$month,1,2011)); 

    return str_replace($indonesian_months, $english_months, $indonesianMonthName); 

} 

echo getDate('01 Desember 2017'); 
echo getDate('01 Oktober 2017'); 

因此,基本上,你創建的每一個單月英語和印尼語其相應價值的數組,然後使用str_replace()「翻譯」日成英文。

您現在可以在返回的字符串上使用regulat strtotime()Date()函數。

參考文獻:https://stackoverflow.com/a/39874682/6124528