تعريف مساحات الأسماء واستخدامها
ضعوا الفئات داخل مساحات أسماء واستوردوها باستخدام عبارات use
تعريف مساحات الأسماء واستخدامها درس مجاني في PHP Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في PHP Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة PHP Academy 4 دروس في المجموع.
ما مساحة الأسماء؟
تجمع مساحة الأسماء الأصناف والدوال والثوابت ذات الصلة لتجنّب تعارض الأسماء بين المكتبات.
التصريح بمساحة أسماء
استخدم الكلمة المفتاحية namespace بوصفها التعليمة الأولى في ملف PHP (بعد <?php).
<?php
namespace App\Services;
class Logger {
public function log(string $msg): void {
echo $msg;
}
}مقاطع مساحة الأسماء
تفصل الشرطات المائلة العكسية (\) بين المقاطع. ويرتبط كل مقطع عادةً بمجلد في التحميل التلقائي وفق PSR-4.
الاستيراد باستخدام use
تستورد الكلمة المفتاحية use اسم صنف مؤهلًا بالكامل، بحيث يمكنك الإشارة إليه باسمه المختصر.
<?php
namespace App\Controllers;
use App\Services\Logger;
class HomeController {
public function index(): void {
$logger = new Logger();
$logger->log("visited");
}
}الأسماء المؤهلة بالكامل
يمكنك الإشارة إلى صنف من دون use بإضافة شرطة مائلة عكسية في البداية.
<?php
$logger = new \App\Services\Logger();
$logger->log("Hello");مساحة الأسماء العامة
توجد الشيفرة التي لا تنتمي إلى مساحة أسماء في مساحة الأسماء العامة. كما توجد أصناف مضمّنة مثل \DateTime فيها. داخل مساحة أسماء، أضف \ في البداية.
استيراد الدوال والثوابت
استخدم use function وuse const لاستيراد الرموز التي ليست أصنافًا.
<?php
namespace App;
use function App\Utils\formatDate;
use const App\Utils\DATE_FORMAT;
echo formatDate(time(), DATE_FORMAT);تعليمات use المجمّعة
استورد عدة رموز في كتلة use مجمّعة واحدة (في PHP 7 والإصدارات الأحدث).
<?php
use App\Models\{User, Post, Comment};مساحة أسماء واحدة لكل ملف
يُسمح بتعريف عدة مساحات أسماء في ملف واحد، لكن لا يُنصح بذلك. فضّل استخدام مساحة أسماء واحدة لكل ملف للحفاظ على الوضوح والتوافق مع التحميل التلقائي.
الاصطلاحات الشائعة
يستخدم Laravel وSymfony App\ بوصفها مساحة الأسماء الجذرية المرتبطة بـ src/ أو app/ في composer.json.
تنظيم المساحات الفرعية للأسماء
نظّم الشيفرة حسب الميزة أو الطبقة: App\Http\Controllers وApp\Domain\Orders وApp\Infrastructure\Database.
مراجعة مساحات الأسماء
النقاط الأساسية: يجب أن تكون namespace التعليمة الأولى؛ وتستورد use الرموز؛ وتفصل الشرطة المائلة العكسية بين المقاطع؛ وأضف \ في البداية للوصول إلى الأصناف العامة داخل مساحة أسماء.
اختبار سريع
ما الكلمة المفتاحية التي تستورد صنفًا من مساحة أسماء أخرى؟
الأسئلة الشائعة
هل درس «تعريف مساحات الأسماء واستخدامها» مجاني؟
نعم — نص درس «تعريف مساحات الأسماء واستخدامها» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة PHP Academy، انتقل إلى CoddyKit PRO. تتضمن دورة PHP Academy 4 دروس في المجموع.
ماذا ستتعلم في «تعريف مساحات الأسماء واستخدامها»؟
ضعوا الفئات داخل مساحات أسماء واستوردوها باستخدام عبارات use تتمرن على PHP Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ PHP Academy؟
لا تُشترط خبرة سابقة. PHP Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «تعريف مساحات الأسماء واستخدامها»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس PHP Academy هذا؟
نعم. كل درس في PHP Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- تعريف مساحات الأسماء واستخدامها
- مساحات الأسماء المتداخلة والأسماء المستعارة
- معيار التحميل التلقائي PSR-4
- تسجيل محمّلات الملفات تلقائيًا