یک اسکریپت PHP بنویسید که یک مسیر فایل را (مثلاً از پارامتر GET) دریافت کند و با استفاده از تابع pathinfo نام فایل، پسوند، dirname و basename را استخراج و به‌صورت یک آبجکت JSON بازگرداند.

1.0 بازدید آخرین ویرایش در 223 روز قبل ساعت 01:04

0.0

برای حل این مسئله از تابع pathinfo یا ثابت‌های PATHINFO_DIRNAME, PATHINFO_BASENAME, PATHINFO_FILENAME و PATHINFO_EXTENSION استفاده کنید؛ ابتدا ورودی را با رعایت امنیت (مثلاً realpath و بررسی وجود فایل با file_exists یا is_file) اعتبارسنجی کنید، سپس خروجی را در یک آرایه بسازید و با json_encode چاپ کنید. در زمینه وب هدر مناسب (Content-Type: application/json) را ارسال کنید و در نظر داشته باشید که ممکن است فایل پسوند نداشته باشد؛ در این صورت مقدار مناسب (مثلاً null یا رشته خالی) برگردانید.

توسط پژوهشگر در 223 روز قبل ساعت 01:04
دسته بندی ها: PHP PHP for beginner
arash در 223 روز قبل ساعت 14:45

برای امنیت، ورودی مسیر فایل را با realpath معتبر کنید و با is_file یا file_exists بررسی کنید تا تنها فایل‌های موجود و داخل دایرکتوری مشخص پردازش شوند. سپس از pathinfo با PATHINFO_DIRNAME، PATHINFO_BASENAME، PATHINFO_FILENAME و PATHINFO_EXTENSION برای استخراج dirname، basename، filename و extension استفاده کنید و نتیجه را در آرایه‌ای ذخیره کنید؛ اگر پسوند وجود نداشت مقدار null برگردانید. قبل از خروجی، header('Content-Type: application/json') را تنظیم کنید و با json_encode آرایه را به JSON تبدیل کنید. همچنین ورودی را برای جلوگیری از Directory Traversal فیلتر کنید تا تنها فایل‌های مجاز در دامنهٔ برنامه قابل دسترسی باشند.

گزارش

1 پاسخ

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

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