PDA

View Full Version : کمک در خصوص تابع Date



m.yazdian
جمعه 10 مرداد 1393, 20:01 عصر
سلام
دوستان من آشنایی به زبان PHP ندارم ولی به زبان VB.NET آشنایی دارم

در زبان VB میشه یک متغییری از نوع DateTime ایجاد کرد و توی اون یک مقدار تاریخ و زمان وارد کرد و مجددا آن متغییر را تفییر داد.
مثلا

Dim Date1 as new DateTime() = Date.Now()
Date1 = Date1.addDay(10)


با این کد بالا ده روز به متغییر date1 اضافه میشه. این کار را چجوزی میشه توی PHP 5.1.6 انجام داد؟

MRmoon
جمعه 10 مرداد 1393, 20:15 عصر
درود.

خروجیش رو هم می گذاشتین بد نبود.


<?php
$date = strtotime('+10 day');

echo $date;// timestamp
echo "<br/>";
echo date('Y-m-d H:i:s', $date); // Full date.
?>

محمد.

m.yazdian
جمعه 10 مرداد 1393, 22:14 عصر
دوست عزیز ممنون از راهنمایی شما
ولی منمی خوام گه چندین بار به یک متغییر مقادیر روز یا ساعت اضافه بشه.

مثلا فرض کنید یک loop دارید که توی هر حلقه یک روز به تاریخ اضافه بشه. یعنی حلقه اول +1 day و حلقه بعدی +2 day نباشه...!!!

نمونه مثال .Net

Dim date1 as new datetime() = date.now()
For i as integer = 0 to 10
date1 = date1.addDay(1)
next


این مدلی که شما اشاره کردید هر مرتبه به تاریخ روز یک مقداری رو اضافه میکنه مثلا توی حلقه دوم 2روز به روز فعلی و در حلقه سوم 3 روز به روز فعلی اضافه میکنه و این برای کار من مناسب نیست

m.yazdian
شنبه 11 مرداد 1393, 07:19 صبح
دوستان PHP کار لطفا راهنمایی کنند

us1234
شنبه 11 مرداد 1393, 09:56 صبح
دوست عزیز ممنون از راهنمایی شما
ولی منمی خوام گه چندین بار به یک متغییر مقادیر روز یا ساعت اضافه بشه.

مثلا فرض کنید یک loop دارید که توی هر حلقه یک روز به تاریخ اضافه بشه. یعنی حلقه اول +1 day و حلقه بعدی +2 day نباشه...!!!

نمونه مثال .Net

Dim date1 as new datetime() = date.now()
For i as integer = 0 to 10
date1 = date1.addDay(1)
next


این مدلی که شما اشاره کردید هر مرتبه به تاریخ روز یک مقداری رو اضافه میکنه مثلا توی حلقه دوم 2روز به روز فعلی و در حلقه سوم 3 روز به روز فعلی اضافه میکنه و این برای کار من مناسب نیست

هر روز معادل :
24 * 60 * 60 ثانیه است
تابع روز و ساعت جاری به ثانیه هم time() ; می باشد .

شما هر کاری ( کم و یا زیاد کردن ) خواستید می توانید با نتیجه این تابع تایم انجام بدید .
معادل کد شما


$date1 = time();
for($i = 0; $i <= 10 ; $i++)
{
$date1 += (24 * 60 * 60);
}

m.yazdian
شنبه 11 مرداد 1393, 12:23 عصر
با این روش میشه تاریخ و زمان را به صورت یک رشته عددی بدست آورد و روی اون تغییرات داد به قول شما کم و زیاد کرد. حالا چجوری دوباره این رشته عددی را به تاریخ و زمان تبدیل کنیم؟

us1234
شنبه 11 مرداد 1393, 17:36 عصر
با این روش میشه تاریخ و زمان را به صورت یک رشته عددی بدست آورد و روی اون تغییرات داد به قول شما کم و زیاد کرد. حالا چجوری دوباره این رشته عددی را به تاریخ و زمان تبدیل کنیم؟

به همان روشی که دوستان بالاتر گفتند :


echo date('Y-m-d H:i:s', $date); // Full date.