با استفاده از تابع glob در PHP فایلی بنویسید که تمام فایل‌های با پسوند .txt در پوشهٔ مشخصی را پیدا کرده و آنها را به‌صورت فهرست لینک‌های قابل کلیک (HTML) نمایش دهد.

4.0 بازدید آخرین ویرایش در 221 روز قبل ساعت 01:21

0.0

برای حل این مسأله از تابع glob مثلاً glob('path/to/dir/*.txt') برای گرفتن آرایه‌ای از مسیر فایل‌ها استفاده کنید، سپس با یک حلقه foreach هر مسیر را به نام فایل تبدیل (با basename) و با htmlspecialchars ایمن کنید و به‌صورت تگ نمایش دهید تا قابل کلیک باشد؛ توجه کنید مسیرهای قابل دسترسی وب را استفاده کرده و برای جلوگیری از نمایش فایل‌های ناخواسته الگوی جستجو را محدود کنید، همچنین در صورت نیاز می‌توانید بر اساس filemtime مرتب کنید یا وجود فایل با is_file بررسی کنید.

توسط پژوهشگر در 221 روز قبل ساعت 01:21
دسته بندی ها: PHP PHP for beginner
sara در 221 روز قبل ساعت 13:35

برای امنیت بهتر فقط در پوشهٔ وب‌قابل دسترس جستجو کنید و الگوی glob را به‌طور دقیق محدود کرده تا فقط فایل‌های .txt موردنظر پیدا شوند. از glob('path/to/dir/*.txt') استفاده کنید و با foreach مسیرها را به نام فایل با basename تبدیل کرده و با htmlspecialchars ایمن کنید تا به صورت لینک‌های HTML قابل کلیک نمایش داده شوند. برای جلوگیری از نمایش فایل‌های ناخواسته، علاوه بر is_file بررسی کنید و در صورت نیاز فایل‌ها را با filemtime مرتب کنید تا تازه‌ترین‌ها نمایش داده شوند. در نهایت بهتر است دسترسی‌ها و اعتبارسنجی سرور را در نظر بگیرید تا به فایل‌های حساس دسترسی ندهید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری