شرح صفوف ومحتوى الفقرة
أدِر مجلدات التخزين في تطبيقك برمجياً باستخدام is_dir() والإنشاء المتداخل عبر mkdir() والحذف عبر rmdir().
- افحص الشرط
!is_dir($dir)قبل إنشاء المجلد حتى لا يصدر PHP تحذيراً إذا كان المجلد موجوداً بالفعل. - مرّر القيمة
trueللمعامل الثالث (recursive) فيmkdir($dir, 0755, true)لإنشاء سلسلة المجلدات الأبوية المتداخلة في خطوة واحدة. - لا تحذف الدالة
rmdir($dir)إلا المجلدات الفارغة تماماً؛ لذا يجب حذف أي ملفات بداخلها عبرunlink()أولاً.
تنشئ mkdir($nested, 0755, true) المجلد الأساسي والمجلد الفرعي 2026 معاً، ثم تحذفهما rmdir() من الأعمق إلى الأعلى.
PHP
<?php
$base = sys_get_temp_dir() . '/ct_exports_' . getmypid();
$nested = "$base/2026";
if (!is_dir($nested)) {
mkdir($nested, 0755, true);
}
$created = is_dir($nested);
rmdir($nested);
rmdir($base);
echo "Nested created: " . ($created ? 'yes' : 'no') . " | Cleaned: " . (!is_dir($base) ? 'yes' : 'no') . "\n";