Autoload

پرسیده شده
فعالیت 1015 روز پیش
دیده شده 331 بار
0

ما در روش oop که یک فایل autoloadبرای خودمون میسازیم و در حین حال وقتی پکیج ها رو نصب میکنیم در پوشه vendor یک اتولود هست چطوری این رو حل کنیم باید همیشه هر دوتا رو در هر فایل قرارا بدیم یا راه دیگه ای هست؟

 

فایل پیوست

محمد خضرپور
محمد خضرپور

29 تیر 00

0
حذف شده

سلام و احترام

شما وقتی از composer استفاده میکنید دیگه لازم نیست autoload خودتون رو داشته باشید، از همون autoload کامپوزر استفاده کنید تا تداخلی داخل پروژتون نداشته باشید

فایل پیوست

امیر صالحی

توسط

امیر صالحی

30 تیر 00

0
حذف شده

سلام.

خب همونطور که پاسخ داده شد در پست قبلی، برای استفاده از autoload کامپوزر میتونید داخل فایل composer.json مسیر فایل کلاس هاتون رو مشخص کنید، بعنوان مثال:

"autoload": {
    "classmap": ["lib"]
}

در اینجا آدرس فولدرو دادم که شما میتونید حتی فایل هارو هم مشخص کنید در قسمت files.
بعد سیو فایل composer.json کامند زیر را اجرا کنید:

composer dump-autoload

اما اگر میخواهید autoload جدایی داشته باشید و با کامپوزر conflict نکنه میتونی از file_exits استفاده کنی:

spl_autoload_register(function ($className) {
    if (file_exists("lib/$className.php")) {
        include "lib/$className.php";
    }
});
فایل پیوست

محسن موحد

توسط

محسن موحد

31 تیر 00