DateInterval ক্লাস
DateInterval ক্লাসটি PHP-তে সময় ব্যবধান নিয়ে কাজ করতে সহায়তা করে।
এটি দুটি তারিখের মধ্যে পার্থক্য সংরক্ষণ করতে অথবা তারিখ নিয়ে কাজ করার পদ্ধতিগুলিতে ব্যবধান নির্ধারণ করতে ব্যবহৃত হয়।
বিশেষ ফরম্যাটে ব্যবধান তৈরি করা হয়।
সিনট্যাক্স
DateInterval::__construct(string $duration)
ব্যবধান ফরম্যাট
ফরম্যাটটি P (period) অক্ষর এবং
উপাদানগুলি নিয়ে গঠিত:
P{y}Y{m}M{d}DT{h}H{m}M{s}S{w}W
এই ফরম্যাটে: Y - বছর, M - মাস,
D - দিন, T - সময় বিভাজক,
H - ঘন্টা, M - মিনিট, S - সেকেন্ড,
W - সপ্তাহ।
এই অক্ষরগুলির আগে সংশ্লিষ্ট মান লিখতে হবে।
উদাহরণস্বরূপ, 3Y মানে হবে তিন বছর,
আর 5Y2M নির্দেশ করবে 5 বছর এবং
2 মাস।
তৈরি হওয়ার পর DateInterval অবজেক্টে
নিম্নলিখিত বৈশিষ্ট্যগুলি থাকবে:
<?php
$interval->y // বছর
$interval->m // মাস
$interval->d // দিন
$interval->h // ঘন্টা
$interval->i // মিনিট
$interval->s // সেকেন্ড
$interval->f // মাইক্রোসেকেন্ড
$interval->invert // 1 যদি ব্যবধান নেতিবাচক হয়
$interval->days // দিনের সংখ্যা (যদি diff() এর মাধ্যমে তৈরি হয়)
?>
আসুন উদাহরণের মাধ্যমে ব্যবধানের কাজ দেখি:
উদাহরণ
1 ঘন্টা, 45 মিনিট এবং 30 সেকেন্ডের একটি ব্যবধান তৈরি করি:
<?php
$interval = new DateInterval('PT1H45M30S');
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 0
'h' => 1
'i' => 45
's' => 30
)
উদাহরণ
3 সপ্তাহ এবং 2 দিনের একটি ব্যবধান তৈরি করি:
<?php
$interval = new DateInterval('P3W2D');
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 23
'h' => 0
'i' => 0
's' => 0
)
উদাহরণ
5 মাস, 10 দিন এবং 6 ঘন্টার একটি ব্যবধান তৈরি করি:
<?php
$interval = new DateInterval('P5M10DT6H');
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 0
'm' => 5
'd' => 10
'h' => 6
'i' => 0
's' => 0
)
উদাহরণ
2 বছর এবং 15 মিনিটের একটি ব্যবধান তৈরি করি:
<?php
$interval = new DateInterval('P2YT15M');
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 2
'm' => 0
'd' => 0
'h' => 0
'i' => 15
's' => 0
)
উদাহরণ
1 দিন, 12 ঘন্টা এবং 30 সেকেন্ডের একটি ব্যবধান তৈরি করি:
<?php
$interval = new DateInterval('P1DT12H30S');
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 1
'h' => 12
'i' => 0
's' => 30
)
উদাহরণ
1 বছর এবং 3 মাসের একটি নেতিবাচক ব্যবধান তৈরি করি (পিছনের দিকে ব্যবধান):
<?php
$interval = new DateInterval('P1Y3M');
$interval->invert = 1;
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 1
'm' => 3
'd' => 0
'h' => 0
'i' => 0
's' => 0
'invert' => 1
)
উদাহরণ
2 ঘন্টা, 30 মিনিটের একটি নেতিবাচক ব্যবধান তৈরি করি (পিছনের দিকে ব্যবধান):
<?php
$interval = new DateInterval('PT2H30M');
$interval->invert = 1;
var_dump($interval);
?>
কোড 실행ের ফলাফল:
DateInterval Object
(
'y' => 0
'm' => 0
'd' => 0
'h' => 2
'i' => 30
's' => 0
'invert' => 1
)
উদাহরণ
বর্তমান তারিখে একটি ব্যবধান যোগ করি:
<?php
$date = new DateTime('2023-01-01');
$interval = new DateInterval('P10D');
$date->add($interval);
echo $date->format('Y-m-d');
?>
কোড 실행ের ফলাফল:
'2023-01-11'
উদাহরণ
দুটি তারিখের মধ্যে পার্থক্য গণনা করি:
<?php
$date1 = new DateTime('2023-01-01');
$date2 = new DateTime('2023-02-15');
$interval = $date1->diff($date2);
echo $interval->format('%m months %d days');
?>
কোড 실행ের ফলাফল:
'1 months 14 days'
আরও দেখুন
-
DateTimeক্লাস,
যা তারিখ এবং সময় উপস্থাপন করে -
DateTimeZoneক্লাস,
যা সময় অঞ্চল উপস্থাপন করে