التحميل التلقائي
تحميل ملفات متوافقة مع PSR-0 عبر Composer
يتبع webman مواصفات التحميل التلقائي PSR-4. إذا كان مشروعك يحتاج إلى تحميل مكتبات متوافقة مع PSR-0، اتبع الخطوات التالية:
- أنشئ مجلداً
extendلتخزين مكتبات PSR-0 - عدّل ملف
composer.jsonوأضف التالي ضمنautoload:
"psr-0" : {
"": "extend/"
}
ستكون النتيجة النهائية مشابهة لما يلي:

- نفّذ الأمر
composer dumpautoload - نفّذ الأمر
php start.php restartلإعادة تشغيل webman (ملاحظة: إعادة التشغيل الكاملة مطلوبة لتفعيل التغييرات)
تحميل ملفات محددة عبر Composer
-
عدّل ملف
composer.jsonوأضف الملفات المطلوب تحميلها ضمنautoload.files:"files": [ "./support/helpers.php", "./app/helpers.php" ] -
نفّذ الأمر
composer dumpautoload -
نفّذ الأمر
php start.php restartلإعادة تشغيل webman (ملاحظة: إعادة التشغيل الكاملة مطلوبة لتفعيل التغييرات)
ملاحظة
الملفات المعرّفة فيautoload.filesداخل composer.json تُحمّل قبل بدء webman. أمّا الملفات المحمّلة عبرconfig/autoload.phpفي الإطار، فتُحمّل بعد بدء webman.
التغييرات في ملفاتautoload.filesداخل composer.json تتطلب إعادة التشغيل (restart) لتفعيلها؛ التحديث (reload) لا يكفي. أمّا الملفات المحمّلة عبرconfig/autoload.phpفتدعم التحديث السريع (hot-reload)، والتغييرات تُفعّل بعد التحديث (reload).
تحميل ملفات محددة عبر الإطار
قد لا تتوافق بعض الملفات مع مواصفة PSR ولا تُحمّل تلقائياً. يمكنك تحميلها عبر إعداد config/autoload.php، مثلاً:
return [
'files' => [
base_path() . '/app/functions.php',
base_path() . '/support/Request.php',
base_path() . '/support/Response.php',
]
];
ملاحظة
تُعدّ فيautoload.phpتحميل الملفينsupport/Request.phpوsupport/Response.phpلأن الملفات نفسها موجودة فيvendor/workerman/webman-framework/src/support/. عبرautoload.phpيتمّ إعطاء أولوية لنسخ المجلد الجذر للمشروع، مما يسمح بتخصيص هذين الملفين دون تعديل ملفات مجلدvendor. إن لم تحتج لتخصيصهما، يمكنك حذف هاتين الإعدادتين.