โหลดอัตโนมัติ
โหลดไฟล์ที่เข้ากันได้ตามมาตรฐาน 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
จำเป็นต้องรีสตาร์ทเพื่อให้มันใช้งานได้อย่างถูกต้อง การรีโหลดจะไม่ทำให้มันใช้งานได้อย่างถูกต้อง ในทำเนียบของโมดูลด้วยconfig/autoload.php
ยังสามารถรีโหลดได้โดยการใช้ reload หลังจากการเปลี่ยนแปลงไฟล์ที่ด้วย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
เพื่อโหลดที่โปรเจ็กต์ root ของเราก่อน ซึ่งทำให้เราสามารถปรับแต่งเนื้อหาของทั้งสองไฟล์โดยไม่ต้องแก้ไขไฟล์ในvendor
หากคุณไม่ต้องการปรับแต่งเนื้อหา คุณสามารถละเว้นการตั้งค่าสองอันนี้ได้