همانطور که می دانید یک پروژه همگام با پیشرفت زمان توسعه می یابد . ممکن است در هنگام توسعه پروژه کلاس ها، متدها و یا ثابت های داخلی هم نامی ایجاد شود ، که باعث ایجاد مشکلاتی گردد. چون فضای که در آن کد نویسی می کنیم یک فضای global
و سراسری هست، و منجر به تداخل یا conflict
توابع با یکدیگر می شود.
برای تعریف یک namespace
باید از دستور namespace
در بالای فایل PHP
خود استفاده کنید. توجه کنید که این دستور باید اولین خط در فایل PHP
شما باشد (البته به استثناء دستور declare
) و اجازه ندارید قبل از آن هیچ whitespace
(فضای خالی مانند اسپیس یا اینتر) یا کدهایی به غیر از کد PHP
قرار دهید.
Namespaces
می تواند به عنوان نام یک کلاس از عناصر تعریف کرد که در آن هر عنصر یک نام خاص به آن کلاس مرتبط دارد. ممکن است با عناصر موجود در کلاسهای دیگر به اشتراک گذاشته شود.
کلمه کلیدی use
به توسعه دهندگان اجازه می دهد Namespaces
را کوتاه کنند.
[pastacode lang=”php” manual=”use%20%3Cnamespace-name%3E%3B%0A” message=”” highlight=”” provider=”manual”/]
Namespaces
پیش فرض مورد استفاده در لاراول App
است ، با این حال کاربر می تواند Namespaces
را متناسب با وب اپلیکیشن خود تغییر دهد. ایجاد Namespaces
تعریف شده توسط کاربر با دستور artisan
به شرح زیر می باشد.
[pastacode lang=”markup” manual=”php%20artisan%20app%3Aname%20SocialNet” message=”” highlight=”” provider=”manual”/]
Namespaces
که یک بار ایجاد شود می تواند شامل قابلیت های مختلفی باشد و می تواند در کنترل کننده ها و کلاس های مختلف مورد استفاده قرار گیرد.