المساعد الشخصي الرقمي

مشاهدة النسخة كاملة : دالة scandir



walid_8281500
03-23-2009, 07:41 PM
بسم الله الرحمن الرحيم

سنتعرف على دالة scandir التي أتت مع نسخة php 5. الدالة تصبح مصفوفة تحمل أسماء الملفات بمجرد اعطائها اسم الجلد
لنفرض ان لدينا مجلد باسم php5، قبل php 5 عندما تريد استخراج أسماء الملفات الموجودة في مجلد ما سيكون لازاما عليك كتابة هذا الكود



$dir="php5"; // اسم المجلد
$dir2=opendir($dir); // مقبض المجلد
while( $read=readdir($dir2) )
{
echo $read.'<br />'; // طباعة أسماء الملفات
}
closedir($dir2);

الآن سنجرب دالة scandir



$dir="php5"; // اسم المجلد
$dir2=scandir($dir); // حفظ أسماء الملفات في مصفوفة

echo'<pre>';
print_r($dir2);
echo'</pre>';


وهذه طريقة طباعة أسماء الملفات بشكل عادي



$dir="php5"; // اسم المجلد
$dir2=scandir($dir); // حفظ أسماء الملفات في مصفوفة

for($i=0;$i<count($dir2);$i++)
{
echo '<br />'.$dir2[$i];

}


كما يمكن تجاهل . و ..

بهذا الكود



$dir="php5"; // اسم المجلد
$dir2=scandir($dir); // حفظ أسماء الملفات في مصفوفة

for($i=0;$i<count($dir2);$i++)
{
if( $dir2[$i] == "." or $dir2[$i] == ".." ) // اذا كانت القيمة تساوي اي من النقطة او النقطتين استمر ولا تطبعهما
{
continue;
}
echo '<br />'.$dir2[$i];

}


فوائد الدرس:

معرفة طريقة التعامل مع الملفات
معرفة استخدام اكثر ممن طريقة
معرفة استخدام احسن الطرق للوصول الى المبتغى
ولا تنسى أن دالة scandir تعمل فقط على php5