strtotime() (strtotime)
می خواهی «تبدیل تاریخ متنی» انجام دهی؟ تابع strtotime() یک مُبدّل تاریخ است. متن انگلیسیِ زمان را می گیرد و به یونیکس تایم اِمپ (Unix Timestamp) یعنی ثانیه از 1970 تبدیل می کند.
تعریف و کاربرد
طبق منبع، strtotime() تاریخ وزمان متنی انگلیسی را به تایم اِمپ تبدیل می کند. مقدار بازگشتی در موفقیت یک عدد است. در خطا FALSE است.
برای قالب دهی خروجی، می توانی از strftime() کمک بگیری. همچنین ساخت تایم اِمپ سفارشی با mktime() ممکن است.
سینتکس
<?php
// strtotime(time, now)
// time: رشته تاریخ/زمان متنی.
// now: تایم اِمپ مبنا برای تاریخ های نسبی.
?>
مثال های منبع: تبدیل تاریخ متنی
<?php
echo strtotime("now");
echo "<br>";
echo strtotime("3 October 2005");
echo "<br>";
echo strtotime("+5 hours");
echo "<br>";
echo strtotime("+1 week");
echo "<br>";
echo strtotime("+1 week 3 days 7 hours 5 seconds");
echo "<br>";
echo strtotime("next Monday");
echo "<br>";
echo strtotime("last Sunday");
?>
نکات مهم تفسیر تاریخ
- دو رقم سال: 00–69 یعنی 2000–2069.
- دو رقم سال: 70–100 یعنی 1970–2000.
- فرمت با اسلش (/): الگوی آمریکایی m/d/y فرض می شود.
- فرمت با خط تیره یا نقطه: الگوی اروپایی d-m-y فرض می شود.
- پیشنهاد: از تاریخ
YYYY-MM-DDیا strptime() برای دقت بیشتر استفاده کن.
گام های عملی «تبدیل تاریخ متنی»
- رشته تاریخ متنی را مشخص کن.
- تابع
strtotime()را روی آن اجرا کن. - در صورت نیاز، با
strftime()خروجی را قالب بده.
نکته: برای تاریخ های نسبی، پارامتر now مبنا را تعیین می کند.
جمع بندی سریع
- تبدیل تاریخ متنی با
strtotime()انجام می شود. - خروجی موفق یک تایم اِمپ عددی است.
- به فرمت های m/d/y و d-m-y دقت کن.
- سال دو رقمی قاعده خاص دارد.