স্বয়ংক্রিয়ভাবে লোড করা
composer ব্যবহার করে PSR-0 মানের ফাইল লোড করা
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 পুনঃচালু করতে (মনে রাখবেন, কার্যকর হতে পুনঃচালু করতে হবে)
টিপ
composer.json
এর মধ্যেautoload.files
কনফিগারেশন করা ফাইলগুলো webman চলার আগে লোড হবে। অন্যদিকে, ফ্রেমওয়ার্কেরconfig/autoload.php
দ্বারা লোড করা ফাইলগুলো webman চলার পরে লোড হবে।
composer.json
এautoload.files
দ্বারা লোডকৃত ফাইলগুলো পরিবর্তনের পর কার্যকর করতে পুনঃচালনা করতে হবে, আবার লোড হবে না। অন্যদিকে, ফ্রেমওয়ার্কেরconfig/autoload.php
দ্বারা লোডকৃত ফাইলগুলো হট লোড সমর্থন করে, পরিবর্তনের পর পুনঃলোড করলে কার্যকর হবে।
ফ্রেমওয়ার্ক ব্যবহার করে কিছু ফাইল লোড করা
কিছু ফাইল হয়তো SPR মানের সাথে সামঞ্জস্যপূর্ণ নয়, তাই স্বয়ংক্রিয়ভাবে লোড করা সম্ভব নয়, আমরা 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
এর মাধ্যমে প্রকল্পের মূল ডিরেক্টরিরsupport/Request.php
এবংsupport/Response.php
কে অগ্রাধিকার দিয়ে লোড করছি, ফলে আমরা এই দুটি ফাইলের বিষয়বস্তু কাস্টমাইজ করতে পারি এবংvendor
এর মধ্যে ফাইলগুলো পরিবর্তন করার প্রয়োজন হয়নি। যদি আপনাকে এগুলো কাস্টমাইজ করার প্রয়োজন না হয়, তাহলে এই দুটি কনফিগারেশনকে উপেক্ষা করতে পারেন।