السلام عليكم
عندي مجلد ولنفرض اسمه aaaaaa
اريد كوماند يقوم بجلب تاريخ أقدم ملف في هذا المجلد وتاريخ أجدد ملف في هذا المجلد
صراحة ماني عارف اسوي الكوماند الخاص بذلك فياريت المساعدة
شكراً مقدماً
السلام عليكم
عندي مجلد ولنفرض اسمه aaaaaa
اريد كوماند يقوم بجلب تاريخ أقدم ملف في هذا المجلد وتاريخ أجدد ملف في هذا المجلد
صراحة ماني عارف اسوي الكوماند الخاص بذلك فياريت المساعدة
شكراً مقدماً
اخي PHPLover ( او اخ مخزن ) امزح معاك
عزيزي ممكن استخدام داله filemtime و التي تفحص لك تاريخ آخر مرة تم تعديل او تحديث الملف يعني Order By Modified
و من ثم تقدر ترتب تواريخ الملفات (في مصفوفه) مثلا تصاعديا و تاخذ اول قيمه (قيمة الملف القديم) و آخر قيمة قيمة احدث ملف
ممكن يكون هناك طريقة افضل و كلن هذا ما لدي
بالتوفيق يالغالي
هههههههههههههه لا عادي
طيب ممكن الكود ؟؟؟
مثل ما قال اخي الكريم b happy
تحياتي ،كود PHP:
$dirName = 'aaaaaa';
$dir = dir($dirName);
$i = 0;
$files = array();
while( false !== ($file = $dir->read()) )
{
if( $file !== '..' and $file !== '.')
$files[filemtime("$dirName/$file")] = $file;
}
function newest($array){
return $array[max( array_keys($array) )];
}
function oldest($array){
return $array[min( array_keys($array) )];
}
echo(newest($files));
echo '<br />';
echo(oldest($files));
شكرا لك رياض القران
راح اتعبكم معاي
طيب لو بدي احذف ملفات من تاريخ معين الى تاريخ معين؟!
المشاركة الأصلية كتبت بواسطة PHPLover
معلش اخي phplover تأخرت عليك بالكود و لكن الأخ رياض القرآن ما قصر
على العموم بالنسبة لسؤالك هذا
استخدم دالة foreach و استخدم اداة شرطية بسيطه لمعرفة إذا ما كان التاريخ اصغر او اكبر مثال بسيط لضيق الوقت
هذه مجرد فكرة خطرت في بالي و لم يسبق لي تجربتها
كود PHP:
<?
// هنا تواريخ الملفات
$ex = array()
// التاريخ الأكبر
$max = "2006-08-03";
// التاريخ الأدنى
$min = "2005-06-04";
foreach ($ex as $value)
{
if ($value < $max and $value > $min)
{
// نفذ كود حذف الملف
unlink($file);
}
}
?>
?>
اتمنى يكون صالح للإستخدام البشري
و اي مساعدة خبرنا
هلا اخوي بي هابي
لم يعمل الكود او بالاصح لم يقوم بالحذف
علما أن إسم المجلد aaaaaa
فياريت تعدله لو تكرمت
جرب هذاكود PHP:
$dirName = 'aaaaa';
$dir = dir($dirName);
$i = 0;
$files = array();
while( false !== ($file = $dir->read()) )
{
if( $file !== '..' and $file !== '.')
$files[filemtime("$dirName/$file")] = $file;
}
// التاريخ الأكبر
$max = mktime(0, 0, 0, 2, 32, 2007); //32 - 2 - 2007
// التاريخ الأدنى
$min = mktime(0, 0, 0, 1, 1, 2006); //1 - 1 - 2006
foreach ($files as $value => $filename)
{
if ($value < $max and $value > $min)
{
// نفذ كود حذف الملف
unlink("$dirName/$filename");
}
}
لم ينفع اخوي رياض القران الرجاء المساعدة العاجلة يا اخوان
المشاركة الأصلية كتبت بواسطة PHPLover
اخي وضح لنا الأخطاء ما نقدر نعرف وين الخطأ بمجرد القول انها لا تعمل
ما الخطأ الذي يظهر لديك
هل قمت بتعديل اللازم ؟
في الانتظار عزيزي
مايحذف اخوي بي هابي
انت بتطلب حذف
مجلد
وليس ملف
اليس كذلك
...؟
حذف مجلد يختلف عن حذف ملف
لا حبيبي اريد حذف ملف وليس حذف مجلد
المطلوب بالتفصيل كالتالي ...
احدد تاريخين معينيين وتقوم البرمجية بحذف الملفات داخل المجلد اللتي تقع بين التاريخين المحددين
فهمتوا ياجماعة ؟
تكفون يا اخوان حاولت العب في الكود الاعلى ولم تنجخ محاولاتي
غريب لا ارى في الكود اي اخطاء على العموم اخي الكريم انت جرب غير اسم المجلد الأخ رياض القرآن بارك الله فيه ما قصر بس كاتب اسم المجلد aaaaa و انت تبي aaaaaa يمكن هذا الخطأ
و راح اجرب الكود عندي اليوم ان شاء الله
بالتوفيق