صفحة 1 من 2
أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 19 فبراير 2013, 11:04
بواسطة Saif Alhak
السلام عليكم
عندي دالة تقوم بحساب العمر من خلال تواريخ الميلاد المدخلة بصيغة يوم-شهر-سنة , لكنها لاتعمل عندما يكون التاريخ مدخل كسنة الميلاد فقط , فأنا بحاجة لدالة تقوم بإكتشاف إن التاريخ غير كامل الصيغة وتقوم بتحويل السنة 1990 مثلاً لـ 1-1-1990 كأقرب حل , هل أجد هكذا شيئ ؟!
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 19 فبراير 2013, 14:47
بواسطة لص القلوب
ارفق الداله الي عندك
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 20 فبراير 2013, 00:07
بواسطة Saif Alhak
مرحباً
الدالة هي لحساب العمر بين تاريخي الوفاة والولادة
كود: تحديد الكل
$sh_age = floor( (strtotime($dead_date) - strtotime($born_date)) / 31556926);
وصيغة التاريخ هي
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 20 فبراير 2013, 00:35
بواسطة saanina
هات 3 امثله للتواريخ
وشكل استخدامك لها
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 20 فبراير 2013, 00:36
بواسطة saanina
بالمناسبه هذا ناتج كودك
كود: تحديد الكل
php> $dead_date = '22-11-2009';
php> $born_date = '33-8-1987';
php> $sh_age = floor( (strtotime($dead_date) - strtotime($born_date)) / 31556926);
php> echo $sh_age;
39
Ree: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 20 فبراير 2013, 12:24
بواسطة Saif Alhak
السلام عليكم
تحياتي لك أخي عبدالرحمن , كيف حالك؟
بالنسبة للمثال فهذا الكود مثلاً
كود: تحديد الكل
$dead_date = '22-11-2009';
$born_date = '30-8-1987';
$sh_age = floor( (strtotime($dead_date) - strtotime($born_date)) / 31556926);
echo $sh_age;
ناتجه هو 22
ومشكلتي هي أنه أحياناً لاتتوفر لدينا معلومات عن شهر ويوم الميلاد ويكون متوفراً فقط سنة الميلاد , وبالتالي لايعمل الكود ... فأريد أن تأخذ قيمة اليوم 1 والشهر 1 تلقائياً مع الحفاظ على السنة كي يعمل الكود
أما بالنسبة لناتج كودي فبالمناسبة لايوجد شهر ميلادي فيه 33 يوم غمزة
تقبل تحياتي
Ree: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 20 فبراير 2013, 17:12
بواسطة لص القلوب
ها هي الفنكشن لحساب عمر الشخص
كود: تحديد الكل
function year($s)
{
$b = date_create($s);
$t = new DateTime(date('Y-m-d',time()));
return date_diff($t, $b)->format('%Y');
}
echo year('1991');
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 21 فبراير 2013, 02:11
بواسطة Saif Alhak
السلام عليكم
أخي "لص القلوب" , شكراً لك على الفنكشن ولكنها ليست ما أريده *_^
أنا لدي متغير تاريخ .... إذا كان بصيغة كاملة 15-1-1990 فليتركة , وإذا كان عبارة عن السنة 1980 فقط , فأريد تحويلها لصيغة كاملة هكذا 1-1-1980 , فهل هذا ممكن ؟!
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 21 فبراير 2013, 04:20
بواسطة لص القلوب
الفنكشن الي ارفقتهالك بتشتغل مع السنه او مع السنه + الشهر او مع السنه + الشهر + اليوم
علي العموم لو عايز تتحقق من التاريخ وتضيف فيه الشهر واليوم
كود: تحديد الكل
$t = '1991';
//$t => 1991
if(strpos($t,'-') == false) $t='1-1-'.$t;
//$t => 1-1-1991
رد: أريد دالة لإجاع تاريخ بالسنة إلى تاريخ يوم-شهر سنة
مرسل: 21 فبراير 2013, 06:17
بواسطة Saif Alhak
ممتاز الله يعطيك العافية ماقصرت
جاري التجريب