get list file in directory

JavidFlasher

کاربر فعال
سلام دوستان
من برای بدست اوردن نام فایلهای یه دایرکتوری و ذخیرشون تو یه فایل از این کدها استفاده میکنم:
PHP:
<?php

$dir="folder"; 
$fo = @fopen( "db.txt" , "w" );
if ($dir_list = opendir($dir))
{
while(($filename = readdir($dir_list)))
{
	
	fwrite( $fo ,$filename);

}
closedir($dir_list);
fclose( $fo );
}

?>

ولی وقتی میخوام به هر کدومشون یه استرینگ اضاف کنم دیگه چیزی سیو نمیشه تو فایلم:
PHP:
fwrite( $fo ,$filename+"isFile");

چیکار کنم؟
اصلا راهی هست که آدرس دقیق فایل های یه دایرکتوری رو بدست آورد و تو تکسک ذخیره کرد ؟؟؟؟
 

Domanjiri

Well-Known Member
درود بر شما

توی PHP بر خلاف جاوا و ++C و..برای چسباندن دو استرینگ یا یک متغیر به یک استرینگ از . dot استفاده میشه، پس:
PHP:
fwrite( $fo ,$filename."isFile");

کدتون رو تست نکردماا! فقط این مشکل چون واضح بود مطرح کردم

اصلا راهی هست که آدرس دقیق فایل های یه دایرکتوری رو بدست آورد و تو تکسک ذخیره کرد ؟؟؟؟

برای گرفتن لیست فایل های داخل یک دایرکتوری یکی از ساده ترین راه ها استفاده از DirectoryIterator هست:
PHP:
<?php
foreach (new DirectoryIterator('folder') as $file) {
    if($file->isDot()) continue;
    echo $file->getFilename() . '</br>';
}
راه دیگه استفاده از glob هست که میتونید مشخص کنید که مثلن فقط فایل های txt رو براتون لیست کنه:

PHP:
foreach (glob("*.txt") as $file) {//اگه می خواین تمام فایل ها رو لیست کنه * خالی قرار بدین
    if($file == '.' || $file == '..') continue;
   echo $file . '</br>';
}
روش های دیگه استفاده از scandir و همین راهی هست که شما استفاده کردید.

موفق باشین
 
آخرین ویرایش:

جدیدترین ارسال ها

بالا