TGViewer
| AmirHossein | | AmirHossein | @amirhdeveloper · 611 subscribers
Post #42 180
فضای نام یا namespace :
به شما این امکان می‌دهد که کد های خود را سازماندهی کنید و از تداخل نام کلاس ها، تابع ها، ثابت ها و... جلوگیری کنید، یعنی اگر در پروژه خود به عنوان مثال دو کلاس با نام های MyClass داشته باشید با استفاده از namespace ها آنها را از یکدیگر جدا می کنید.
نکته: namespace باید در ابتدای کد ها قرار گیرد و قبل از آن چیزی نوشته نشود.
مثال:
1.php

<?php
namespace App\Folder1;

class MyClass{

}
———————-
2.php

<?php
namespace App\Folder2;

class MyClass{

}
تا اینجا شما در دو فایل متفاوت کلاس های هم نام ساخته اید اما به واسطه namespace متفاوت آنها این دو کلاس از یکدیگر متمایز می شوند.
برای استفاده از این کلاس ها کافیست نام namespace و سپس نام کلاس را بنویسید، مثال:
new App\Folder1\MyClass;
new App\Folder2\MyClass;
یا اینکه ابتدا با کلمه کلیدی use آنها را صدا زده و سپس استفاده کنید، مثال:
use App\Folder1;
new MyClass;
برای استفاده از تابع ها با namespace از کله کلیدی use function استفاده می شود:
use function App\myFunction;
myFunction();
و برای استفاده از constant ها از use const:
use const App\A;
echo A;

مورد بعدی alias ها یا نام مستعار برای use کردن هست که به شما این امکان رو میدهد تا namespace خود را با یک نام دیگر وارد کنید این کار می تواند برای کوتاه کردن namespace های طولانی یا تغییر نام به نام دلخواه به کار رود و کافی است عبارت as و سپس نام دلخواه را بعد از namespace وارد کنید، مثال:
use App\Folder1\MyClass as MyAlias;
new MyAlias();
در این قسمت App\Folder1\MyClass با نام مستعار MyAlias مورد استفاده قرار گرفته است.
.
  • 👍 4
  • 🤔 1
More from @amirhdeveloper
  1. Sep 30, 2026پکیج LaraGram Sentinel منتشر شد؛ یک پنل مانیتورینگ که هیچ چیزی از زیر دستش در نمی‌ره! تمام…
  2. Sep 23, 2026از امروز با کاهش شدید حاکرها مواجه میشیم
  3. Sep 19, 2026🔴 سوال سوم دو Region دارید: US-East و EU-West. کاربران در هر دو Region هستند. سیستم باید…
  4. Sep 19, 2026🟠 سوال دوم فرض کنید Service A به Service B درخواست می‌زند. B به‌دلیل overload، latency با…
  5. Sep 19, 2026🟢 سوال اول فرض کنید یک سرویس backend داریم که به PostgreSQL وصل می‌شود. تعداد requestها ن…
  6. Sep 19, 2026خیلی وقته پست‌های کانال فقط درمورد LaraGram بوده، وقتشه یکم جالب‌ترش کنیم اگر ممبرها هنوز…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →