Cara Menggunakan Fungsi date_sub() di PHP

Cara Menggunakan Fungsi Date Sub Di Php



Itu tanggal_sub() merupakan fungsi dari Tanggal Waktu kelas, yang merupakan bagian dari ekstensi tanggal dan waktu PHP. Ini digunakan untuk mengurangi interval tertentu dari tanggal tertentu. Ini dapat digunakan untuk menghitung tanggal yang akan datang dengan mengurangi satu atau lebih hari, bulan, atau tahun dari tanggal saat ini. Itu tanggal_sub() fungsi mengembalikan yang baru Tanggal Waktu objek yang mewakili tanggal dan waktu setelah perhitungan dilakukan.

Sintaks Dasar

Sintaks untuk menggunakan tanggal_sub() fungsi diberikan di bawah ini:

date_sub ( Tanggal Waktu $objek , Interval Tanggal $interval )

Di Sini, $objek adalah Tanggal Waktu objek yang ingin Anda kurangi intervalnya, dan $interval adalah Interval Tanggal objek yang menentukan interval yang ingin Anda kurangi. Perhatikan bahwa kedua argumen diperlukan untuk menggunakan the tanggal_sub() berfungsi dengan benar.







Bekerja dengan Interval Tanggal

Untuk menggunakan tanggal_sub() fungsi, Anda perlu membuat Interval Tanggal objek yang menentukan jumlah waktu yang ingin Anda kurangi dari tanggal waktu asli Anda. Interval Tanggal objek dapat dibuat dengan menggunakan Interval Tanggal konstruktor. Konstruktor mengambil parameter string yang menentukan interval dalam format seperti P1D (satu hari), P1M (satu bulan), P1Y (satu tahun), dan P1DT1H (satu hari dan satu jam).



Contoh

// Kurangi satu hari
$interval = baru Interval Tanggal ( 'P1D' ) ; // Kurangi satu bulan
$interval = baru Interval Tanggal ( 'P1M' ) ;

// Kurangi satu tahun
$interval = baru Interval Tanggal ( 'P1Y' ) ;

Cara Menggunakan Fungsi PHP date_sub()

Setelah Anda memiliki Interval Tanggal objek, Anda dapat menggabungkannya dengan Tanggal Waktu objek untuk menghitung tanggal-waktu baru. Berikut adalah contoh yang mengurangi satu hari dari tanggal saat ini:





$datetime = baru Tanggal Waktu ( ) ;

$interval = baru Interval Tanggal ( 'P1D' ) ;

date_sub ( $datetime , $interval ) ;

gema $datetime -> format ( 'Y-m-d H:i:s' ) ;

?>

Seperti yang Anda lihat, datetime baru satu hari lebih awal dari tanggal saat ini.





Dimungkinkan juga untuk mengurangi jam, menit, dan detik dari objek DateTime menggunakan metode tanggal_sub() fungsi. Untuk mengurangi jam, Anda dapat melewati interval tanggal sebagai PT1H, yang artinya kurangi satu jam. Misalnya, pertimbangkan kode berikut:





$datetime = baru Tanggal Waktu ( '2023-05-16 14:43:00' ) ;

date_sub ( $datetime , baru Interval Tanggal ( 'PT1H' ) ) ;

gema $datetime -> format ( 'Y-m-d H:i:s' ) ;

?>

Ini mengurangi satu jam dari objek DateTime dan memperbarui objek dengan nilai baru. Anda dapat mengakses nilai baru dengan menggunakan format() fungsi objek DateTime.

Contoh 1: Mengurangkan Interval yang Berbeda

Itu tanggal_sub() fungsi memungkinkan untuk mengurangi berbagai interval, bukan hanya hari. Mari pertimbangkan skenario di mana kita ingin mengurangi 2 jam 30 menit dari tanggal dan waktu tertentu.



$tanggal = baru Tanggal Waktu ( '02-11-2023 10:32:45' ) ;

$interval = baru Interval Tanggal ( 'PT1H15M' ) ;

date_sub ( $tanggal , $interval ) ;

gema $tanggal -> format ( 'Y-m-d H:i:s' ) ;

?>

Dalam contoh ini, kami membuat objek DateTime yang mewakili tanggal dan waktu “02-11-2023 10:32:45” . Kami juga membuat Interval Tanggal objek yang mewakili periode 1 jam 15 menit menggunakan format “PT1H15M”. Kami kemudian menggunakan tanggal_sub() berfungsi untuk mengurangi interval dari tanggal dan waktu.

Contoh 2: Mengurangkan Beberapa Interval

Anda juga dapat menggunakan tanggal_sub() berfungsi untuk mengurangi beberapa interval dari objek DateTime. Sintaksnya sederhana: buat saja objek DateInterval baru untuk setiap interval yang ingin Anda kurangi, dan teruskan semuanya ke tanggal_sub() berfungsi sebagai larik.



$interval = Himpunan (

baru Interval Tanggal ( 'P1Y' ) ,

baru Interval Tanggal ( 'P6M' ) ,

baru Interval Tanggal ( 'P3D' )

) ;

$datetime = baru Tanggal Waktu ( ) ;

untuk setiap ( $interval sebagai $interval ) {

date_sub ( $datetime , $interval ) ;

}

gema $datetime -> format ( 'Y-m-d H:i:s' ) ;

?>

Dalam contoh ini, kami mengurangi satu tahun, enam bulan, dan tiga hari dari tanggal tersebut.

Contoh 3: date_sub() dengan Timezones

Satu hal yang perlu Anda perhatikan saat menggunakan tanggal_sub() fungsinya adalah dapat memengaruhi zona waktu Anda Tanggal Waktu obyek. Secara default, Tanggal Waktu objek menggunakan zona waktu server Anda. Namun, jika Anda ingin bekerja dengan zona waktu yang berbeda, Anda dapat menyetelnya secara eksplisit menggunakan setTimezone() metode.



$datetime = baru Tanggal Waktu ( 'Sekarang' , baru DateTimeZone ( 'Amerika/New_York' ) ) ;

$interval = baru Interval Tanggal ( 'P1D' ) ;

date_sub ( $datetime , $interval ) ;

gema $datetime -> format ( 'Y-m-d H:i:s' ) ;

?>

Dalam contoh ini, kami menyetel zona waktu ke America/New_York dan mengurangi satu hari dari tanggal waktu.

Saat mengurangkan interval menggunakan tanggal_sub() fungsi, penting untuk dicatat bahwa tanggal yang dihasilkan disesuaikan secara otomatis jika menjadi tidak valid.

Kesimpulan

Itu tanggal_sub() fungsi dalam PHP menyediakan cara mudah untuk mengurangi interval dari objek DateTime. Dengan menggunakan fungsi ini, pengembang dapat dengan mudah melakukan operasi seperti mengurangkan hari, jam, menit, atau interval kompleks dari tanggal dan waktu tertentu. Itu tanggal_sub() fungsi menawarkan fleksibilitas dan akurasi dalam menangani perhitungan tanggal, menjadikannya alat yang berharga untuk bekerja dengan tanggal dan waktu dalam aplikasi PHP.