আসুন পিএইচপিতে তারিখ এবং সময় নিয়ে কীভাবে কাজ করবেন তা দেখি।
এ সময়ইউনিক্স- কম্পিউটার
ইউনিক্স কম্পিউটারের জন্য, ঘড়ির কাঁটা শুরু হয় 1 জানুয়ারি, 1970-এর মধ্যরাতে। যে কোনো তারিখ 01/01/1970 থেকে সেকেন্ডের সংখ্যা হিসাবে গণনা করা হয় (টাইমস্ট্যাম্প - টাইমস্ট্যাম্প নির্দেশিত)। এই কনভেনশনগুলি পিএইচপি-তেও ব্যবহৃত হয়। উদাহরণস্বরূপ, আমরা একটি দিন এগিয়ে যেতে চাই। তারপরে আপনাকে বর্তমান টাইমস্ট্যাম্প মানটিতে 60x60x24 সেকেন্ড যোগ করতে হবে।
এই সময়ের ট্র্যাকিং স্কিম তারিখগুলির সাথে অপারেশনগুলিকে ব্যাপকভাবে সহজ করে তোলে৷ উদাহরণস্বরূপ, যদি একটি টাইমস্ট্যাম্পের মান অন্যটির চেয়ে বেশি হয়, প্রথম মানটি দ্বিতীয়টির চেয়ে পরবর্তী তারিখের সাথে মিলে যায়৷
সেকেন্ডে সময়ের একক
বর্তমান সময় পাওয়া
পিএইচপি-তে, বর্তমান টাইমস্ট্যাম্প মান পেতে, আপনাকে পরামিতি ছাড়াই time() ফাংশনটি কল করতে হবে, উদাহরণস্বরূপ:
অনেক পিএইচপি তারিখ এবং সময় ফাংশন একটি আর্গুমেন্ট হিসাবে একটি টাইমস্ট্যাম্প মান নেয়। উদাহরণস্বরূপ, date() ফাংশন নির্দিষ্ট বিন্যাস অনুযায়ী ফরম্যাট করা একটি তারিখ স্ট্রিং প্রদান করে, উদাহরণস্বরূপ:
সৃষ্টিটাইমস্ট্যাম্প তারিখ অনুসারে
ফাংশনmktime() আপনি যদি ঘন্টা, মিনিট, সেকেন্ড, মাসের দিন, মাস এবং বছর নির্দিষ্ট করেন তাহলে একটি টাইমস্ট্যাম্প তৈরি করবে:
ফাংশনstrtotime()
ফাংশনটি একটি ইংরেজি বাক্যাংশ হিসাবে নির্দিষ্ট তারিখের জন্য একটি টাইমস্ট্যাম্প তৈরি করে, যেমন এপ্রিল 1 বা শুক্রবার৷
তারিখের মান অবশ্যই YYYY-MM-DD ফর্ম্যাটে উল্লেখ করতে হবে। যদি strtotime ফাংশন তারিখটিকে রূপান্তর করতে না পারে তবে এটি মিথ্যা ফেরত দেয়।
ফাংশন ব্যবহারের উদাহরণতারিখ()
বিল্ট-ইন ফাংশন ফ্লোর() ফলাফলের ভগ্নাংশ বাদ দিতে ব্যবহৃত হয়।
নিচের লেখাটি প্রথম পড়ার সময় এড়িয়ে যেতে পারে
ডেটাবেসে তারিখ বিন্যাসমাইএসকিউএল
PHP টাইমস্ট্যাম্প বিন্যাস MySQL টাইমস্ট্যাম্প বিন্যাসের সাথে বেমানান।
MySQL-এর তিন ধরনের তারিখ এবং সময় ক্ষেত্র রয়েছে: DATA (তারিখ), TIME (সময়), DATETIME (তারিখ এবং সময়)। এছাড়াও একটি বিশেষ ডেটা টাইপ রয়েছে, TIMESTAMP, যা DATETIME এর মতো কাজ করে, কিন্তু প্রতিবার টেবিল রেকর্ড ঢোকানো বা আপডেট করার সময় স্বয়ংক্রিয়ভাবে বর্তমান সময়ে আপডেট হয়।
PHP ফরম্যাটে একটি টাইমস্ট্যাম্পকে MySQL ফরম্যাটে রূপান্তর করতে, আপনি নিম্নলিখিত কোডটি ব্যবহার করতে পারেন:
তারিখ("Y-m-d H:i:s", $timestamp)
উদাহরণস্বরূপ, আমরা তারিখ এবং সময় হিসাবে "2008-10-01 13:23:40" ব্যবহার করতে পারি।
একটি SELECT ক্যোয়ারী থেকে একটি PHP টাইমস্ট্যাম্প পেতে, UNIX_TIMESTAMP() SQL ফাংশনটি ব্যবহার করুন:
টেবিল থেকে UNIX_TIMESTAMP(তারিখ) নির্বাচন করুন
তারিখ এবং সময়ের সাথে কাজ করার জন্য MySQL এর আরও অনেক দরকারী ফাংশন রয়েছে।
স্ট্রিং তারিখ(স্ট্রিং বিন্যাস[, int টাইমস্ট্যাম্প])
যুক্তি অনুযায়ী ফরম্যাট করা সময় প্রদান করে বিন্যাস, যুক্তি দ্বারা প্রদত্ত টাইমস্ট্যাম্প ব্যবহার করে টাইমস্ট্যাম্পঅথবা বর্তমান সিস্টেম সময় যদি টাইমস্ট্যাম্পসেট না. অন্য কথায়, টাইমস্ট্যাম্পঐচ্ছিক এবং ফাংশন দ্বারা প্রত্যাবর্তিত মান ডিফল্ট সময়() .
মন্তব্য:বেশিরভাগ সিস্টেমের জন্য, বৈধ তারিখগুলি 13 ডিসেম্বর, 1901, 20:45:54 GMT থেকে 19 জানুয়ারী, 2038, 03:14:07 GMT পর্যন্ত৷ (এই তারিখগুলি একটি 32-বিট স্বাক্ষরিত পূর্ণসংখ্যার সর্বনিম্ন এবং সর্বোচ্চ মানের সাথে মিলে যায়)। উইন্ডোজের জন্য, বৈধ তারিখগুলি 01-01-1970 থেকে 01-19-2038 পর্যন্ত৷
মন্তব্য:একটি তারিখের স্ট্রিং উপস্থাপনা থেকে টাইমস্ট্যাম্প পেতে, আপনি ফাংশনটি ব্যবহার করতে পারেন strtotime(). উপরন্তু, কিছু ডাটাবেসের নিজস্ব ফাংশন আছে একটি তারিখের অভ্যন্তরীণ উপস্থাপনাকে টাইমস্ট্যাম্পে রূপান্তর করার জন্য (উদাহরণস্বরূপ, MySQL UNIX_TIMESTAMP ফাংশন)।
নিম্নলিখিত অক্ষর বিন্যাস পরামিতি স্বীকৃত হয়
বিন্যাস স্ট্রিং মধ্যে অক্ষর | বর্ণনা | রিটার্ন মান উদাহরণ |
---|---|---|
ক | ছোট হাতের মধ্যে পূর্ব মেরিডিয়াম বা পোস্ট মেরিডিয়াম | সকাল অথবা বিকেল |
ক | পূর্ব মেরিডিয়াম বা পোস্ট মেরিডিয়াম ইন বড় হাতের অক্ষর | সকাল অথবা বিকেল |
খ | ইন্টারনেট সময় পরিবর্তন করুন | 000 থেকে 999 |
গ | ISO 8601 ফরম্যাটে তারিখ (PHP 5 এ যোগ করা হয়েছে) | 2004-02-12T15:19:21+00:00 |
d | মাসের দিন, অগ্রণী শূন্য সহ 2 সংখ্যা | 01 থেকে 31 পর্যন্ত |
ডি | সপ্তাহের দিনের সংক্ষিপ্ত নাম, 3টি অক্ষর | সোম থেকে রবি |
চ | মাসের পুরো নাম, যেমন জানুয়ারি বা মার্চ | জানুয়ারি থেকে ডিসেম্বর |
g | 12-ঘণ্টার ফর্ম্যাটে প্রথম শূন্য ছাড়াই ঘন্টা | 1 থেকে 12 |
জি | প্রথম শূন্য ছাড়া 24-ঘন্টার বিন্যাসে ঘন্টা | 0 থেকে 23 |
জ | অগ্রণী শূন্য সহ 12-ঘণ্টার বিন্যাসে ঘন্টা | 01 থেকে 12 |
এইচ | প্রথম শূন্য সহ 24-ঘন্টার ফর্ম্যাটে ঘন্টা | 00 থেকে 23 |
i | অগ্রণী শূন্য সহ মিনিট | 00 থেকে 59 |
আমি (মূলধন i) | ডেলাইট সেভিং টাইম সাইন | তারিখটি DST হলে 1, অন্যথায় 0। |
j | অগ্রণী শূন্য ছাড়াই মাসের দিন | 1 থেকে 31 |
l (ছোট হাতের "L") | সপ্তাহের দিনের পুরো নাম | রবিবার থেকে শনিবার |
এল | অধিবর্ষের চিহ্ন | 1 বছর যদি অধিবর্ষ হয়, অন্যথায় 0। |
মি | অগ্রণী শূন্য সহ সাধারণ মাসের সংখ্যা | 01 থেকে 12 |
এম | মাসের সংক্ষিপ্ত নাম, 3টি অক্ষর | জানুয়ারি থেকে ডিসেম্বর |
n | অগ্রণী শূন্য ছাড়া সাধারণ মাসের সংখ্যা | 1 থেকে 12 |
ও | ঘণ্টায় গ্রিনিচ গড় সময়ের থেকে পার্থক্য | উদাহরণস্বরূপ: +0200 |
r | RFC 2822 ফর্ম্যাটে তারিখ | যেমন: Thu, 21 Dec 2000 16:01:07 +0200 |
s | অগ্রণী শূন্য সহ সেকেন্ড | 00 থেকে 59 |
এস | মাসের অর্ডিনাল দিনের ইংরেজি প্রত্যয়, 2টি অক্ষর | st , nd , rd , বা th . j এর সাথে ব্যবহার করা হয় |
t | এক মাসে দিনের সংখ্যা | 28 থেকে 31 |
টি | সার্ভারে টাইমজোন | উদাহরণ: EST , MDT ... |
উ | ইউনিক্স এপোক শুরু হওয়ার পর থেকে সেকেন্ডের সংখ্যা (দ্য ইউনিক্স ইপোচ, জানুয়ারী 1, 1970, 00:00:00 GMT) | আরো দেখুন সময়() |
w | সপ্তাহের দিনের সাধারণ সংখ্যা | 0 (রবিবার) থেকে 6 (শনিবার) |
ডব্লিউ | বছরের ISO-8601 সপ্তাহের সংখ্যা, সপ্তাহের প্রথম দিন সোমবার (PHP 4.1.0 এ যোগ করা হয়েছে) | উদাহরণস্বরূপ: 42 (বছরের 42 তম সপ্তাহ) |
Y | সাধারণ বছরের সংখ্যা, 4 সংখ্যা | উদাহরণ: 1999, 2003 |
y | বছরের সংখ্যা, 2 সংখ্যা | উদাহরণ: 99 , 03 |
z | বছরের দিনের সাধারণ সংখ্যা (0 থেকে সংখ্যা করা) | 0 থেকে 365 |
জেড | সময় অঞ্চল সেকেন্ডে অফসেট। UTC-এর পশ্চিমের সময় অঞ্চলগুলির জন্য এটি একটি ঋণাত্মক সংখ্যা, UTC-এর পূর্বে এটি একটি ধনাত্মক সংখ্যা৷ | -43200 থেকে 43200 |
স্ট্রিং এ পাওয়া অন্য কোন অক্ষর বিন্যাস, অপরিবর্তিত ফলাফল স্ট্রিং প্রদর্শিত হবে. ব্যবহার করার সময় Z সবসময় 0 প্রদান করে gmdate() .
date() ফাংশন ব্যবহার করার উদাহরণ
আপনি \ এর সাথে অক্ষরটিকে এস্কেপ করে একটি অক্ষরকে ফরম্যাটিং অক্ষর হিসাবে স্বীকৃতি দেওয়া এড়াতে পারেন। যদি একটি অক্ষর \ (উদাহরণস্বরূপ, \t) এর সাথে একত্রে বিশেষ হয় তবে আপনার অন্য একটি যোগ করা উচিত।
date() ফাংশনে অক্ষরগুলি এড়িয়ে যাওয়া৷
একটি কাস্টম বিন্যাসে সময় বা তারিখ প্রদর্শন করতে, তারিখ ফাংশন আছে.
এই উদাহরণটি সংখ্যা হিসাবে দিন/মাস/বছর বিন্যাসে বর্তমান তারিখ প্রদর্শন করে। এই নিবন্ধটি শেষ পর্যন্ত পড়ার পরে, আপনি যে কোনও বিন্যাসে বর্তমান তারিখ এবং সময় প্রদর্শন করতে সক্ষম হবেন।
এই ফাংশনটি আপনাকে শুধুমাত্র বর্তমান তারিখ এবং সময় প্রদর্শন করতে দেয় না, তবে টাইমস্ট্যাম্পটিকে নির্দিষ্ট বিন্যাসে রূপান্তর করতে দেয়। টাইমস্ট্যাম্প হল লিনাক্স প্রতিষ্ঠিত হওয়ার পর থেকে সেকেন্ডের সংখ্যা। এই নম্বরটি time() ফাংশন ব্যবহার করে পাওয়া যেতে পারে। তারিখ ফাংশনে টাইমস্ট্যাম্প একটি ঐচ্ছিক পরামিতি।আপনি যে বিন্যাসটি চান তা পেতে, আপনি প্রথম প্যারামিটারে বিশেষ সংশোধক ব্যবহার করতে পারেন। তাদের যথেষ্ট আছে.
বিন্যাস স্ট্রিং মধ্যে অক্ষর | বর্ণনা | রিটার্ন মান উদাহরণ |
---|---|---|
ক | am বা pm ছোট হাতের অক্ষরে | পূর্বাহ্ণ অপরাহ্ণ |
ক | AM বা PM বড় হাতের অক্ষরে | পূর্বাহ্ণ অপরাহ্ণ |
খ | ইন্টারনেট সময় পরিবর্তন করুন | 000 থেকে 999 |
গ | ISO 8601 ফরম্যাটে তারিখ (PHP 5 এ যোগ করা হয়েছে) | 2005-06-11T11:11:11+00:00 |
d | মাসের দিন, অগ্রণী শূন্য সহ 2 সংখ্যা | 01 থেকে 31 পর্যন্ত |
ডি | সপ্তাহের দিনের সংক্ষিপ্ত নাম, 3টি অক্ষর | সোম থেকে রবি |
চ | পুরো মাসের নাম | জানুয়ারি থেকে ডিসেম্বর |
g | 12-ঘণ্টার ফর্ম্যাটে প্রথম শূন্য ছাড়াই ঘন্টা | 1 থেকে 12 |
জি | প্রথম শূন্য ছাড়া 24-ঘন্টার বিন্যাসে ঘন্টা | 0 থেকে 23 |
জ | অগ্রণী শূন্য সহ 12-ঘণ্টার বিন্যাসে ঘন্টা | 01 থেকে 12 |
এইচ | প্রথম শূন্য সহ 24-ঘন্টার ফর্ম্যাটে ঘন্টা | 00 থেকে 23 |
i | অগ্রণী শূন্য সহ মিনিট | 00 থেকে 59 |
আমি (মূলধন i) | ডেলাইট সেভিং টাইম সাইন | তারিখটি DST হলে 1, অন্যথায় 0 অন্যথায়। |
j | অগ্রণী শূন্য ছাড়াই মাসের দিন | 1 থেকে 31 |
l (ছোট হাতের "L") | সপ্তাহের দিনের পুরো নাম | রবিবার থেকে শনিবার |
এল | অধিবর্ষের চিহ্ন | 1 বছর যদি অধিবর্ষ হয়, অন্যথায় 0। |
মি | অগ্রণী শূন্য সহ সাধারণ মাসের সংখ্যা | 01 থেকে 12 |
এম | মাসের সংক্ষিপ্ত নাম, 3টি অক্ষর | জানুয়ারি থেকে ডিসেম্বর |
n | অগ্রণী শূন্য ছাড়া সাধারণ মাসের সংখ্যা | 1 থেকে 12 |
ও | ঘণ্টায় গ্রিনিচ গড় সময়ের থেকে পার্থক্য | +0200 |
r | RFC 2822 ফর্ম্যাটে তারিখ | বৃহস্পতি, জানুয়ারী 28, 2011 03:11:14 PM +0200 |
s | অগ্রণী শূন্য সহ সেকেন্ড | 00 থেকে 59 |
এস | মাসের অর্ডিনাল দিনের ইংরেজি প্রত্যয়, 2টি অক্ষর | st, nd, rd বা th. j এর সাথে ব্যবহার করা হয় |
t | এক মাসে দিনের সংখ্যা | 28 থেকে 31 |
টি | সার্ভারে টাইমজোন | উদাহরণ: EST, MDT... |
উ | ইউনিক্স এপোক শুরু হওয়ার পর থেকে সেকেন্ডের সংখ্যা (দ্য ইউনিক্স ইপোচ, জানুয়ারী 1, 1970, 00:00:00 GMT) | 1356361196 |
w | সপ্তাহের দিনের সাধারণ সংখ্যা | 0 (রবিবার) থেকে 6 (শনিবার) |
ডব্লিউ | বছরের ISO-8601 সপ্তাহের সংখ্যা, সপ্তাহের প্রথম দিন সোমবার (PHP 4.1.0 এ যোগ করা হয়েছে) | উদাহরণস্বরূপ: 42 (বছরের 42 তম সপ্তাহ) |
Y | সাধারণ বছরের সংখ্যা, 4 সংখ্যা | উদাহরণ: 1986, 2012 |
y | বছরের সংখ্যা, 2 সংখ্যা | উদাহরণ: 86, 12 |
z | বছরের দিনের সাধারণ সংখ্যা (0 থেকে সংখ্যা করা) | 0 থেকে 365 |
জেড | সময় অঞ্চল সেকেন্ডে অফসেট। UTC-এর পশ্চিমের সময় অঞ্চলগুলির জন্য এটি একটি ঋণাত্মক সংখ্যা, UTC-এর পূর্বে এটি একটি ধনাত্মক সংখ্যা৷ | -43200 থেকে 43200 |
যদি এই সাইটটি আপনার জন্য দরকারী ছিল, তাহলে আপনি এটির বিকাশে সাহায্য করতে পারেন
আপনার ব্রাউজারে জাভাস্ক্রিপ্ট ব্লক করা আছে। এই সাইটের জন্য জাভাস্ক্রিপ্ট কাজ করার অনুমতি দিন!
তারিখ এবং সময় প্রতিনিধিত্ব
ইন্টারনেটের মতো ডিস্ট্রিবিউটেড সিস্টেমে সময়ই মূল বিষয়। সিস্টেম ঘড়িতে সামান্য অসঙ্গতির কারণে, একজন ফরেক্স প্লেয়ার কয়েক মিনিটের মধ্যে হাজার হাজার ডলার হারাতে পারে; ব্যবসায়িক গোয়েন্দা সিস্টেম একটি পূর্বাভাস করতে ভুল করবে; NNTP সার্ভার তাদের হারাবে গুরুত্বপূর্ণ তথ্যব্যবহারকারীর দ্বারা প্রয়োজনীয়, ইত্যাদি
তারিখ এবং সময় নিয়ে কাজ করার জন্য পিএইচপিতে অনেকগুলি ফাংশন রয়েছে। সর্বাধিক ব্যবহৃত হয়:
- সময়()- বর্তমান পরম সময় প্রদান করে। এই সংখ্যাটি 1 জানুয়ারী, 1970 (UNIX যুগের শুরু থেকে) মধ্যরাত থেকে অতিক্রান্ত সেকেন্ডের সংখ্যার সমান।
- getdate()- তারিখ এবং সময় তথ্য পড়ে। নির্দিষ্ট সময় বা বর্তমান (ডিফল্ট) সময়ের জন্য তথ্য ধারণকারী একটি সহযোগী অ্যারে প্রদান করে। অ্যারেতে নিম্নলিখিত উপাদান রয়েছে:
উদাহরণ 1
getdate() ব্যবহার করে $val) echo "$key = $val
"; প্রতিধ্বনি"
আজ: $d.$d.$d"; ?>উদাহরণ 1 ফলাফল:
সেকেন্ড = 21 মিনিট = 4 ঘন্টা = 12 mday = 10 wday = 4 মাস = 11 বছর = 2005 yday = 313 সপ্তাহের দিন = বৃহস্পতিবার মাস = 0 নভেম্বর = 1131613461 আজ: 11/10/2005
- তারিখ()- তারিখ এবং সময় বিন্যাস। আর্গুমেন্ট: ফরম্যাট স্ট্রিং এবং পরম সময়। দ্বিতীয় যুক্তিটি ঐচ্ছিক। নির্দিষ্ট বিন্যাসে প্রদত্ত বা বর্তমান তারিখ সহ একটি স্ট্রিং প্রদান করে। বিন্যাস স্ট্রিং নিম্নলিখিত কোড থাকতে পারে:
ক ক "AM" বা "PM" পদবি অন্তর্ভুক্ত d মাসের দিন (01-31) ডি সপ্তাহের দিনের সংক্ষিপ্ত নাম (তিন অক্ষর) চ পুরো মাসের নাম g ঘন্টা (প্রধান শূন্য ছাড়া 12-ঘন্টার বিন্যাস) জি ঘন্টা (প্রধান শূন্য ছাড়া 24-ঘন্টার বিন্যাস) জ ঘড়ি (12 ঘন্টা বিন্যাস) এইচ ঘড়ি (24 ঘন্টা বিন্যাস) i মিনিট (00-59) j অগ্রণী শূন্য ছাড়া মাসের দিন (1-31) l সপ্তাহের দিনের পুরো নাম এল লিপ ইয়ারের পতাকা (0 বা 1) মি মাস (01-12) এম মাসের সংক্ষিপ্ত নাম (তিন অক্ষর) n মাস (1-12) s সেকেন্ড (00-59) t একটি নির্দিষ্ট মাসে দিনের সংখ্যা (28 থেকে 31 পর্যন্ত) উ পরম সময় w y বছর (দুই সংখ্যা) Y বছর (চার সংখ্যা) z বছরের দিন (0-365) জেড টাইমজোন সেকেন্ডে অফসেট (-43200 থেকে 43200) বিন্যাস স্ট্রিং অন্তর্ভুক্ত অন্য কোনো তথ্য প্রত্যাবর্তিত স্ট্রিং মধ্যে ঢোকানো হবে. যে অক্ষরগুলি নিজেই ফর্ম্যাট কোডগুলি ফর্ম্যাট স্ট্রিংয়ে যোগ করতে হয়, সেগুলির আগে অবশ্যই একটি ব্যাকস্ল্যাশ "\" লিখতে হবে৷ ব্যাকস্ল্যাশের সাথে যুক্ত হলে যে অক্ষরগুলি ফরম্যাট কোড হয়ে যায় তার আগে দুটি স্ল্যাশ থাকতে হবে। উদাহরণস্বরূপ, যদি আপনি একটি স্ট্রিং-এ "n" যোগ করতে চান, তাহলে আপনি "\\n" টাইপ করবেন কারণ "\n" একটি নতুন লাইন অক্ষর।
উদাহরণ 2
তারিখ ব্যবহার করে() উদাহরণ 2 ফলাফল:
আজ: 10.11.05 13:03
- mktime()- পরম সময় প্রদান করে, যা তারপর date() বা getdate() ফাংশনের সাথে ব্যবহার করা যেতে পারে। নিম্নলিখিত ক্রমে ছয়টি পূর্ণসংখ্যা আর্গুমেন্ট নেয়:
ঘড়ি
মিনিট
সেকেন্ড
মাস
মাসের দিন
বছরউদাহরণ 3
mktime() ব্যবহার করে উদাহরণ 3 ফলাফল:
- চেক তারিখ()- তারিখের সঠিকতা পরীক্ষা করা। যুক্তি: মাস, দিন, বছর। তারিখটি বৈধ হলে সত্য ফেরত দেয়, যেমন
মাস - 1 থেকে 12 পর্যন্ত একটি পূর্ণসংখ্যা;
দিন - একটি পূর্ণসংখ্যা প্রদত্ত মাসে মোট দিনের সংখ্যার বেশি নয়৷ একই সময়ে, লিপ বছর সঠিকভাবে প্রক্রিয়া করা হয়;
বছর হল 1 থেকে 32767 পর্যন্ত একটি পূর্ণসংখ্যা।এই ক্ষেত্রে:
যদি (!চেকডেট($মাস, 1, $বছর)) ( $d = getdate(); $month = $d; $year = $d; )
মনোযোগ! তারিখটি বৈধ পরিসরে হতে পারে, কিন্তু অন্যান্য তারিখ ফাংশন এই মানটি গ্রহণ করবে না। এইভাবে, আপনি 1902 এর আগে কয়েক বছর mktime() ব্যবহার করতে পারবেন না এবং আপনার 1970 এর আগে বছরের জন্য এটি সাবধানে ব্যবহার করা উচিত।
- strftime()- স্থানীয় তারিখ এবং সময় গঠন। আর্গুমেন্ট: ফরম্যাট স্ট্রিং এবং পরম সময়। দ্বিতীয় যুক্তিটি ঐচ্ছিক। নির্দিষ্ট বিন্যাসে প্রদত্ত বা বর্তমান তারিখ সহ একটি স্ট্রিং প্রদান করে। এই ক্ষেত্রে, ফাংশন ব্যবহার করে নির্বাচিত লোকেল থেকে সপ্তাহের মাস এবং দিনের নামগুলি বের করা হয়৷ বিন্যাস স্ট্রিংটিতে নিম্নলিখিত কোডগুলি থাকতে পারে:
%a সপ্তাহের দিনের সংক্ষিপ্ত রূপ %A সপ্তাহের দিনের পুরো নাম %b সংক্ষিপ্ত মাসের নাম % বি পুরো মাসের নাম % গ পছন্দের তারিখ এবং সময় বিন্যাস %C শতক সংখ্যা %d মাসের দিন (1-31) %D একই রকম %m/%d/%y % ই মাস (1-12) %ঘ একই রকম %b % H ঘড়ি (24 ঘন্টা বিন্যাস) % আমি ঘড়ি (12 ঘন্টা বিন্যাস) %j বছরের দিন (0-365) % মি মাস (1-12) % এম মিনিট %n নিউলাইন চরিত্র %p "am" বা "pm" চিহ্ন অন্তর্ভুক্ত %r a.m./p.m স্বরলিপি ব্যবহার করে সময় % আর 24 ঘন্টা ফরম্যাটে সময় %S সেকেন্ড (00-59) %t ট্যাব চরিত্র % টি একই রকম %H:%M:%S %u সপ্তাহের দিনের সংখ্যা (1 - সোমবার, 7 - রবিবার) %U সপ্তাহের সংখ্যা। বছরের প্রথম রবিবার কাউন্টডাউন শুরু হয় % ভি ISO 8601:1988 অনুযায়ী সপ্তাহের সংখ্যা। প্রথম সপ্তাহে কমপক্ষে চার দিন থাকতে হবে এবং সোমবার প্রথম দিন হিসাবে বিবেচিত হয় %W সপ্তাহের সংখ্যা। বছরের প্রথম সোমবার কাউন্টডাউন শুরু হয় %w সপ্তাহের দিনের সংখ্যা (0 - রবিবার, 6 - শনিবার) %এক্স সময় ছাড়া পছন্দের তারিখ বিন্যাস %এক্স তারিখ ছাড়া পছন্দের সময় বিন্যাস %y বছর (দুই সংখ্যা) %Y বছর (চার সংখ্যা) %Z সময় অঞ্চল (নাম বা সংক্ষিপ্ত রূপ) %% চিহ্ন "%" বিন্যাস স্ট্রিং অন্তর্ভুক্ত অন্য কোনো তথ্য প্রত্যাবর্তিত স্ট্রিং মধ্যে ঢোকানো হবে.
(PHP 4, PHP 5, PHP 7)
তারিখ- সিস্টেম তারিখ/সময় আউটপুট ফর্ম্যাট করে
বর্ণনা
স্ট্রিং তারিখ (স্ট্রিং $ফর্ম্যাট [, int $timestamp = সময়() ])
নির্দিষ্ট বিন্যাস প্যাটার্ন অনুযায়ী ফর্ম্যাট করা একটি স্ট্রিং প্রদান করে। টাইমস্ট্যাম্প আর্গুমেন্ট দ্বারা নির্দিষ্ট করা টাইমস্ট্যাম্প ব্যবহার করা হয়, অথবা টাইমস্ট্যাম্প নির্দিষ্ট না থাকলে বর্তমান সিস্টেম সময়। তাই টাইমস্ট্যাম্প ঐচ্ছিক এবং ফাংশন দ্বারা প্রত্যাবর্তিত মানের ডিফল্ট সময়().
পরামিতি তালিকা
ফলাফল স্ট্রিং প্যাটার্ন ( স্ট্রিং) তারিখ সহ। নীচে বিন্যাস বিকল্প দেখুন. এছাড়াও অনেকগুলি পূর্বনির্ধারিত তারিখ/সময় ধ্রুবক রয়েছে যা এই পরামিতিগুলির পরিবর্তে ব্যবহার করা যেতে পারে। এই ক্ষেত্রে: DATE_RSSপ্যাটার্ন প্রতিস্থাপন করে "D, d M Y H:i:s".
বিন্যাস স্ট্রিং মধ্যে অক্ষর | বর্ণনা | রিটার্ন মান উদাহরণ |
---|---|---|
দিন | --- | --- |
d | মাসের দিন, অগ্রণী শূন্য সহ 2 সংখ্যা | থেকে 01 আগে 31 |
ডি | সপ্তাহের দিনের পাঠ্য উপস্থাপনা, 3টি অক্ষর | থেকে সোমআগে সূর্য |
j | অগ্রণী শূন্য ছাড়াই মাসের দিন | থেকে 1 আগে 31 |
l(ছোট হাতের "L") | সপ্তাহের দিনের পুরো নাম | থেকে রবিবারআগে শনিবার |
এন | ISO-8601 স্ট্যান্ডার্ড অনুযায়ী সপ্তাহের দিনের সাধারন সংখ্যা (PHP 5.1.0 এ যোগ করা হয়েছে) | থেকে 1 (সোমবার) থেকে 7 (রবিবার) |
এস | মাসের অর্ডিনাল দিনের ইংরেজি প্রত্যয়, 2টি অক্ষর | সেন্ট, nd, rdবা ম. সাথে ব্যবহার করা হয় j |
w | সপ্তাহের দিনের সাধারণ সংখ্যা | থেকে 0 (রবিবার) থেকে 6 (শনিবার) |
z | বছরের দিনের সাধারণ সংখ্যা (0 থেকে শুরু) | থেকে 0 আগে 365 |
একটা সপ্তাহ | --- | --- |
ডব্লিউ | ISO-8601 মান অনুযায়ী বছরের সপ্তাহের সাধারণ সংখ্যা; সপ্তাহ সোমবার থেকে শুরু হয় (PHP 4.1.0 এ যোগ করা হয়েছে) | এই ক্ষেত্রে: 42 (বছরের 42 তম সপ্তাহ) |
মাস | --- | --- |
চ | মাসের পুরো নাম, যেমন জানুয়ারি বা মার্চ | থেকে জানুয়ারিআগে ডিসেম্বর |
মি | অগ্রণী শূন্য সহ সাধারণ মাসের সংখ্যা | থেকে 01 আগে 12 |
এম | মাসের সংক্ষিপ্ত নাম, 3টি অক্ষর | থেকে জানআগে ডিসেম্বর |
n | অগ্রণী শূন্য ছাড়া সাধারণ মাসের সংখ্যা | থেকে 1 আগে 12 |
t | নির্দিষ্ট মাসে দিনের সংখ্যা | থেকে 28 আগে 31 |
বছর | --- | --- |
এল | অধিবর্ষের চিহ্ন | 1 যদি বছরটি একটি অধিবর্ষ হয়, অন্যথায় 0 . |
o | ISO-8601 অনুযায়ী বছরের সংখ্যা। হিসাবে একই অর্থ আছে Y, যদি না ISO সপ্তাহের সংখ্যা ( ডব্লিউ) পূর্ববর্তী বা পরের বছরের অন্তর্গত; তারপর সেই সপ্তাহের বছর ব্যবহার করা হবে। (PHP 5.1.0 এ যোগ করা হয়েছে) | উদাহরণ: 1999 বা 2003 |
Y | সাধারণ বছরের সংখ্যা, 4 সংখ্যা | উদাহরণ: 1999 , 2003 |
y | বছরের সংখ্যা, 2 সংখ্যা | উদাহরণ: 99 , 03 |
সময় | --- | --- |
ক | ছোট হাতের অক্ষরে পূর্ব মেরিডিয়াম (ইংরেজি "দুপুরের আগে") বা পোস্ট মেরিডিয়াম (ইংরেজি "আফটারনুন") | amবা pm |
ক | বড় হাতের অক্ষরে পূর্ব মেরিডিয়াম বা পোস্ট মেরিডিয়াম | এএমবা পিএম |
খ | ইন্টারনেট সময় (দিনের বিকল্প সময়) ফর্ম্যাটে সময় | থেকে 000 আগে 999 |
g | 12-ঘণ্টার বিন্যাসে ঘন্টা অগ্রণী শূন্য ছাড়া | থেকে 1 আগে 12 |
জি | প্রথম শূন্য ছাড়া 24-ঘন্টার ফর্ম্যাটে ঘন্টা | থেকে 0 আগে 23 |
জ | অগ্রণী শূন্য সহ 12-ঘণ্টার বিন্যাসে ঘন্টা | থেকে 01 আগে 12 |
এইচ | অগ্রণী শূন্য সহ 24-ঘণ্টার বিন্যাসে ঘন্টা | থেকে 00 আগে 23 |
i | অগ্রণী শূন্য সহ মিনিট | থেকে 00 আগে 59 |
s | অগ্রণী শূন্য সহ সেকেন্ড | থেকে 00 আগে 59 |
u | মাইক্রোসেকেন্ড (PHP 5.2.2 এ যোগ করা হয়েছে)। দয়া করে মনে রাখবেন তারিখ()সবসময় ফিরে আসবে 000000 , কারণ এটি একটি পূর্ণসংখ্যা লাগে ( পূর্ণসংখ্যা) প্যারামিটার, যখন তারিখ সময়::ফর্ম্যাট()মাইক্রোসেকেন্ড সমর্থন করে। | এই ক্ষেত্রে: 654321 |
সময় অঞ্চল | --- | --- |
e | টাইমজোন কোড (PHP 5.1.0 এ যোগ করা হয়েছে) | উদাহরণ: ইউটিসি, জিএমটি, আটলান্টিক/আজোরস |
আমি(মূলধন i) | ডেলাইট সেভিং টাইম সাইন | 1 , যদি তারিখটি দিবালোক সংরক্ষণ সময়ের সাথে মিলে যায়, 0 অন্যথায় |
ও | ঘণ্টায় গ্রিনিচ গড় সময়ের সাথে পার্থক্য | এই ক্ষেত্রে: +0200 |
পৃ | ঘন্টা এবং মিনিটের মধ্যে কোলন GMT পার্থক্য (PHP 5.1.3 এ যোগ করা হয়েছে) | এই ক্ষেত্রে: +02:00 |
টি | সময় অঞ্চলের সংক্ষিপ্ত রূপ | উদাহরণ: EST, এমডিটি ... |
জেড | সময় অঞ্চল সেকেন্ডে অফসেট। UTC-এর পশ্চিমে অবস্থিত সময় অঞ্চলগুলির জন্য, ঋণাত্মক সংখ্যাগুলি ফেরত দেওয়া হয়, যখন UTC-এর পূর্বে অবস্থিত সেগুলি ধনাত্মক হয়৷ | থেকে -43200 আগে 50400 |
সম্পূর্ণ তারিখ/সময় | --- | --- |
গ | ISO 8601 ফরম্যাটে তারিখ (PHP 5 এ যোগ করা হয়েছে) | 2004-02-12T15:19:21+00:00 |
r | তারিখ বিন্যাস » RFC 2822 | এই ক্ষেত্রে: বৃহস্পতি, ডিসেম্বর 21, 2000 04:01:07 PM +0200 |
উ | ইউনিক্স এপোক শুরু হওয়ার পর থেকে সেকেন্ডের সংখ্যা (দ্য ইউনিক্স এপোচ, জানুয়ারী 1, 1970 00:00:00 GMT) | আরো দেখুন সময়() |
টেমপ্লেট স্ট্রিং এর সম্মুখীন অন্য কোন অক্ষর অপরিবর্তিত ফলাফল স্ট্রিং আউটপুট হবে. জেডসবসময় ফিরে আসে 0 ব্যবহার gmdate().
টাইমস্ট্যাম্পমন্তব্য করুন:
যেহেতু প্রশ্নে থাকা ফাংশনটি টাইপের একটি প্যারামিটার টাইমস্ট্যাম্প হিসাবে নেয় পূর্ণসংখ্যা, বিন্যাস অক্ষর uফাংশন ব্যবহার করার সময় শুধুমাত্র দরকারী হবে তারিখ বিন্যাস()এবং কাস্টম টাইমস্ট্যাম্প ফাংশন দিয়ে তৈরি date_create().
ঐচ্ছিক টাইমস্ট্যাম্প প্যারামিটার হল পূর্ণসংখ্যাটাইমস্ট্যাম্প, যা বর্তমান স্থানীয় সময়ে ডিফল্ট হয় যদি টাইমস্ট্যাম্প নির্দিষ্ট করা না থাকে। অন্য কথায়, ডিফল্ট মান ফাংশনের ফলাফলের সমান সময়().
রিটার্ন মান
একটি ফর্ম্যাট করা তারিখ স্ট্রিং প্রদান করে। টাইমস্ট্যাম্প প্যারামিটার হিসাবে একটি অ-সংখ্যাসূচক মান পাস করার সময়, এটি ফিরে আসবে মিথ্যাএবং একটি স্তরের ত্রুটি সৃষ্টি করেছে E_WARNING.
পরিবর্তনের তালিকা
সংস্করণ | বর্ণনা |
---|---|
5.1.0 | টাইমস্ট্যাম্পের বৈধ তারিখের পরিসর সাধারণত 13 ডিসেম্বর, 1901, 20:45:54 GMT থেকে 19 জানুয়ারী, 2038, 03:14:07 GMT পর্যন্ত। (তারা একটি 32-বিট স্বাক্ষরিত পূর্ণসংখ্যার সর্বনিম্ন এবং সর্বোচ্চ মানের সাথে মিলে যায়)। যাইহোক, কিছুতে 5.1.0 এর নিচে পিএইচপি সংস্করণের জন্য অপারেটিং সিস্টেম(যেমন উইন্ডোজ) এই পরিসরটি 01-01-1970 থেকে 01-19-2038 তারিখের মধ্যে সীমাবদ্ধ ছিল৷ |
5.1.0 | টাইম জোন সম্পর্কিত ত্রুটিগুলি এখন স্তরের ত্রুটিগুলি তৈরি করে৷ E_STRICTএবং ই_নোটিস. |
5.1.1 | স্ট্যান্ডার্ড তারিখ/সময় বিন্যাসের জন্য, বিশেষ ধ্রুবক রয়েছে যা বিন্যাস পরামিতি হিসাবে নির্দিষ্ট করা যেতে পারে। |
উদাহরণ
Beispiel #1 ফাংশন ব্যবহারের উদাহরণ তারিখ()
// ডিফল্ট টাইমজোন সেট করুন। পিএইচপি 5.1 থেকে উপলব্ধ
date_default_timezone_set("UTC");
// এরকম কিছু প্রিন্ট করে: সোমবার
ইকো তারিখ ("l");
// আউটপুট এরকম কিছু: সোমবার 8ই আগস্ট 2005 03:12:46 PM
ইকো তারিখ ("l jS \of F Y h:i:s A");
// আউটপুট: জুলাই 1, 2000 একটি শনিবার
প্রতিধ্বনি "জুলাই 1, 2000 একটি" . তারিখ("l" , mktime(0 , 0 , 0 , 7 , 1 , 2000));
/* একটি ফরম্যাট প্যারামিটার হিসাবে ধ্রুবক ব্যবহারের উদাহরণ */
// এইরকম কিছু আউটপুট: Wed, 25 Sep 2013 15:28:57 -0700
ইকো তারিখ(DATE_RFC2822);
// এইরকম কিছু আউটপুট: 2000-07-01T00:00:00+00:00
ইকো তারিখ (DATE_ATOM , mktime (0 , 0 , 0 , 7 , 1 , 2000 ));
?>
একটি অক্ষরকে একটি বিন্যাস অক্ষর হিসাবে স্বীকৃত হওয়া থেকে আটকাতে, এটিকে একটি ব্যাকস্ল্যাশ দিয়ে এড়িয়ে যান। যদি এস্কেপড ক্যারেক্টারটিও একটি ফরম্যাট সিকোয়েন্স হয়, তাহলে এটিকে আবার এস্কেপ করতে হবে।
উদাহরণ #2 একটি ফাংশনে অক্ষর পালানো তারিখ()
// এরকম কিছু প্রিন্ট করে: 15 তারিখ বুধবার
ইকো তারিখ ("l \t\h\e jS");
?>
অতীত এবং ভবিষ্যতের তারিখগুলি প্রদর্শন করতে, ফাংশনগুলি ব্যবহার করা সুবিধাজনক তারিখ()এবং mktime().
Beispiel #3 ফাংশন শেয়ারিং উদাহরণ তারিখ()এবং mktime()
$tomorrow = mktime (0 , 0 , 0 , তারিখ ("m" ) , তারিখ ("d" )+ 1 , তারিখ ("Y" ));
$lastmonth = mktime (0 , 0 , 0 , তারিখ ("m")- 1 , তারিখ ("d" ), তারিখ ("Y" ));
$nextyear = mktime (0 , 0 , 0 , তারিখ ("m" ), তারিখ ("d" ), তারিখ ("Y" )+ 1 );
?>
মন্তব্য করুন:
এই পদ্ধতিটি টাইমস্ট্যাম্পে কেবল বিয়োগ এবং সেকেন্ড যোগ করার চেয়ে আরও নির্ভরযোগ্য, কারণ এটি প্রয়োজন অনুসারে নমনীয় ডেলাইট সেভিং টাইম অ্যাডজাস্ট করার অনুমতি দেয়।
ফাংশন ব্যবহার করার আরও কয়েকটি উদাহরণ তারিখ(). এটি লক্ষ্য করা গুরুত্বপূর্ণ যে সমস্ত অক্ষরগুলিকে অপরিবর্তিত রেখে দেওয়া উচিত। এটি সেই সমস্ত অক্ষরের ক্ষেত্রেও সত্য যেগুলি পিএইচপি-র বর্তমান সংস্করণে ফর্ম্যাটিং অক্ষর হিসাবে স্বীকৃত নয়, কারণ এটি ভবিষ্যতের সংস্করণগুলিতে চালু হতে পারে। এস্কেপ সিকোয়েন্স এড়ানোর জন্য (উদাহরণস্বরূপ, \n), একক উদ্ধৃতি ব্যবহার করুন।
উদাহরণ #4 ব্যবহার করে ফর্ম্যাটিং তারিখ()
// ধরে নিন বর্তমান তারিখ হল মার্চ 10, 2001 5:16:18 pm,
// এবং আমরা মাউন্টেন স্ট্যান্ডার্ড টাইমে (MST)
$আজ = তারিখ("F j, Y, g:i a"); // মার্চ 10, 2001, 5:16 pm
$আজ = তারিখ("m.d.y"); // ০৩.১০.০১
$আজ = তারিখ("j, n, y"); // 10, 3, 2001
$আজ = তারিখ("Ymd"); // 20010310
$আজ = তারিখ("h-i-s, j-m-y, it is w Day"); // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$আজ = তারিখ("\i\t \i\s \t\h\e jS \d\a\y।"); // এটি 10 তম দিন।
$আজ = তারিখ("D M j G:i:s T Y"); // শনি মার্চ 10 17:16:18 MST 2001
$আজ = তারিখ ("H:m:s \m \i\s\ \m\o\n\t\h"); // 17:03:18 মি মাস
$আজ = তারিখ("H:i:s"); // 17:16:18
$আজ = তারিখ("Y-m-d H:i:s"); // 2001-03-10 17:16:18 (MySQL DATETIME ফরম্যাট)
?>
অন্যান্য ভাষায় তারিখ বিন্যাস করতে, পরিবর্তে ব্যবহার করুন তারিখ()ফাংশন সেটলোকাল()এবং strftime().
মন্তব্য
মন্তব্য করুন:
একটি তারিখের স্ট্রিং উপস্থাপনা থেকে টাইমস্ট্যাম্প পেতে, আপনি ফাংশনটি ব্যবহার করতে পারেন strtotime(). উপরন্তু, তারিখের অভ্যন্তরীণ উপস্থাপনাকে টাইমস্ট্যাম্পে রূপান্তর করার জন্য কিছু ডাটাবেসের নিজস্ব ফাংশন রয়েছে (উদাহরণস্বরূপ, MySQL » UNIX_TIMESTAMP ফাংশন)।