Unlimited Plugins, WordPress themes, videos & courses! Unlimited asset downloads! From $16.50/m
Advertisement
  1. Code
  2. PHP

كل ما تحتاجه للبدء مع CodeIgniter

by
Difficulty:BeginnerLength:LongLanguages:

Arabic (العربية/عربي) translation by Maryam Abbas (you can also view the original English article)

CodeIgniter هو إطار تطبيق ويب من أجل PHP. إنه يمكّن المطورين من بناء تطبيقات الويب بشكل أسرع، ويقدم العديد من مكتبات التعليمات البرمجية والمساعدات المفيدة التي تسرع من المهام الشاقة في PHP. يعتمد CodeIgniter على تصميم معياري؛ مما يعني أنه يمكنك تنفيذ مكتبات محددة حسب تقديرك - مما يزيد من سرعة الإطار. سيحاول هذا البرنامج التعليمي إظهار أساسيات إعداد إطار العمل، بما في ذلك كيفية إنشاء تطبيق عالمي مرحب يستخدم نهج MVC.


لماذا الاطار؟

Why a Framework

تسمح الأطر للبنية في تطوير التطبيقات من خلال توفير فئات ووظائف قابلة لإعادة الاستخدام والتي يمكن أن تقلل من وقت التطوير بشكل ملحوظ. بعض الجوانب السلبية للأطر هي أنها توفر فئات غير مرغوب فيها، مما يضيف انتفاخ في الكود و يجعل التطبيق أكثر صعوبة في التنقل.


لماذا CodeIgniter؟

CodeIgniter Basics

يعد CodeIgniter إطارًا خفيفًا، وعالي الأداء. في حين، أنه مثالي للمبتدئين (بسبب
منحنى التعلم الصغير)، كما أنه مثالي لتطبيقات الويب الكبيرة والمتطلبة. تم تطوير CodeIgniter بواسطة EllisLab ولديه توثيق كامل، وسهل الفهم.
توثيق فيما يلي قائمة بأسباب ما يجعل CodeIgniter إطارًا ذكيًا للاستخدام؟

  • بصمة صغيرة مع أداء استثنائي
  • نهج MVC للتطوير (على الرغم من أنه يقوم على شكل مفكك للغاية مما يسمح بالمرونة)
  • يولد عناوين المواقع ودية وسهلة لمحركات البحث
  • قابل للتوسع بسهولة
  • يعمل على كل من (PHP 4 (4.3.+2+ و 5
  • دعم لمعظم قواعد البيانات الرئيسية بما في ذلكMySQL (4.1+)  ،MySQLi ، MS SQL ،Postgres ،Oracle  ،SQLite،
    و ODBC.
  • أمان التطبيق هو مركز النشاط
  • عمليات التخزين المؤقت سهلة
  • هناك العديد من المكتبات والمساعدات لمساعدتك في العمليات المعقدة مثل البريد الإلكتروني، ومعالجة الصور،
    التحقق من صحة النموذج، وتحميل الملفات، والجلسات، والتطبيقات متعددة اللغات وإنشاء apis من أجل تطبيقك
  • يتم تحميل معظم المكتبات عند الحاجة فقط مما يؤدي إلى تقليص الموارد اللازمة

لماذا MVC؟

MVC

بالنسبة للمبتدئين، MVC هي الاحرف الأولى من الكلمات الموديل، العرض، أداة التحكم. وهي نمط برمجة يستخدم في تطوير
تطبيقات الويب. هذا النمط يعزل واجهة المستخدم وبرامج الخلفية (أي تتفاعل قاعدة البيانات من بعضها البعض. تطبيق
ناجح لهذا يتيح للمطورين تعديل واجهة المستخدم الخاصة بهم أو برامج الخلفية دون التأثير
على الأمور الأخرى. يزيد MVC أيضًا من مرونة التطبيق من خلال القدرة على إعادة استخدام النماذج أو المشاهدات
مرة أخرى).  فيما يلي وصف ل MVC.

  • النموذج: يتعامل النموذج مع البيانات الخام وتفاعل قاعدة البيانات وسيحتوي على وظائف
    مثل إضافة سجلات إلى قاعدة بيانات أو تحديد سجلات قاعدة بيانات محددة. في  نموذج CI
    يكون المكون غير مطلوب ويمكن تضمينه في وحدة التحكم.
  • العرض: يتعامل العرض مع عرض عناصر التحكم في البيانات وواجهة المستخدم مع المستخدم.
    في CI قد يكون العرض صفحة ويب أو موجز RSS أو بيانات ajax أو أي "صفحة" أخرى.
  • وحدة التحكم: تتصرف وحدة التحكم على أنها في المنتصف بين العرض والنموذج، وكما يوحي الاسم،
    وحدة التحكم هي أيضا مكان لتحميل المكتبات والمساعدات. في CI، وحدة التحكم هي أيضا مكان لتحميل المكتبات والمساعدات.

مثال لنهج MVC سيكون من خلال نموذج الاتصال.

  1. يتفاعل المستخدم مع طريقة العرض عن طريق ملء نموذج وإرساله.
  2. يتلقى جهاز التحكم بيانات POST من النموذج، يرسل جهاز التحكم هذه البيانات إلى النموذج
    التي يتم  تحديثها في قاعدة البيانات.
  3. ثم يرسل النموذج نتيجة قاعدة البيانات إلى وحدة التحكم.
  4. يتم تحديث هذه النتيجة في العرض وإظهارها للمستخدم.

قد يبدو هذا عمل كثير يتوجب القيام به. لكن، صدقني، عندما تعمل باستخدام تطبيق كبير، فإن القدرة على إعادة استخدام النماذج أو العروض توفر قدرًا كبيرًا من الوقت.


الخطوة 1: تنزيل CodeIgniter

ستحتاج إلى البدء في تنزيل CodeIgniter وتحميله إلى خادمك. وجه متصفحك
إلى http://www.codeigniter.com/  و
انقر على زر التنزيل الكبير. في هذا البرنامج التعليمي نستخدم الإصدار 1.70.


الخطوة 2: تثبيت واستكشاف CodeIgniter

بمجرد تنزيل CodeIgniter، كل ما عليك فعله هو فك ضغطه، وإعادة تسمية المجلد "CodeIgniter_1.7.0"
إما باسم التطبيق أو، في هذه الحالة، "CI" وتحميله إلى خادم PHP و MySQL.
الآن بعد أن أصبح على الخادم الخاص بك، سأشرح ما هي كل المجلدات والملفات من أجله:

  • يخزن مجلد النظام جميع الملفات التي تجعل CI تعمل.
    • يتطابق مجلد التطبيق تقريبًا مع محتويات مجلد النظام
      ولهذا فإن المستخدم يمكن أن يكون لديه ملفات خاصة بهذا التطبيق، على سبيل المثال إذا
      أراد المستخدم فقط تحميل مساعد في تطبيق واحد فإنه يقوم بوضعه في مجلد النظام / التطبيق / مساعدات 
      بدلا من مجلد النظام / مساعدات.

      • يخزن مجلد التهيئة جميع ملفات التهيئة ذات الصلة بالتطبيق. التي
        تتضمن معلومات حول ماهية المكتبات التي يجب أن يقوم التطبيق بتحميلها وتفاصيل قاعدة البيانات.
      • يخزن مجلد وحدات تحكم كافة وحدات التحكم للتطبيق.
      • يخزن مجلد الأخطاء كافة صفحات خطأ القالب للتطبيق. عندما
        يحدث خطأ يتم إنشاء صفحة الخطأ من أحد هذه القوالب.
      • يخزن مجلد المساعدات جميع المساعدات المخصصة لتطبيقك.
      • مجلد الخطافات هو الخطافات التي تعمل على تعديل وظيفة ملفات CI الأساسية،
        يجب استخدام الخطافات فقط من قبل المستخدمين المتقدمين لـ CI
      • يخزن مجلد اللغة خطوطًا نصية يمكن تحميلها من خلال مكتبة اللغة
        لإنشاء مواقع متعددة اللغات.
      • يخزن مجلد المكتبات جميع المكتبات الخاصة بالتطبيق الخاص بك.
      • يخزن مجلد النماذج جميع نماذج التطبيق.
      • يخزن مجلد العرض جميع طرق العرض للتطبيق.
    • يخزن المجلد المؤقت كافة ذواكر التخزين المؤقت التي تم إنشاؤها بواسطة مكتبة التخزين المؤقت.
    • يخزن المجلد codeigniter كل العمليات الداخلية التي تجعل CI تعمل.
    • يخزن مجلد قاعدة البيانات كل برامج تشغيل قاعدة البيانات والفئة التي تمكنك من
      الاتصال بقاعدة البيانات.
    • يخزن مجلد الخطوط جميع الخطوط التي يمكن استخدامها من قبل مكتبة معالجة الصور.
    • يخزن مجلد المساعدات جميع المساعدات الأساسية لـ CI ولكن يمكنك وضع المساعدات التابعة
      هنا والتي يمكن الوصول إليها من قبل جميع التطبيقات الخاصة بك.
    • يقوم مجلد اللغات بتخزين جميع ملفات لغة CI الأساسية التي تستخدم مكتباتها  والمساعدات.
      استخدام. يمكنك أيضًا وضع مجلدات اللغة الخاصة بك والتي يمكن الوصول إليها بواسطة جميع التطبيقات الخاصة بك.
    • يخزن المجلد مكتبات جميع مكتبات CI الأساسية ولكن يمكنك وضع المكتبات الخاصة بك
      هنا والتي يمكن الوصول إليها من قبل جميع التطبيقات الخاصة بك
    • يخزن مجلد السجلات جميع السجلات التي تم إنشاؤها بواسطة CI.
    • يخزن مجلد المكوِّنات الإضافية جميع المكونات الإضافية التي يمكنك استخدامها. المكونات الإضافية متطابقة تقريبًا
      مع المساعدات، تعتبر الإضافات وظائف يقصد أن يشاركها المجتمع.
    • يخزن مجلد السقالات جميع الملفات التي تجعل فئة السقالات تعمل.
      توفر السقالات واجهة CRUD مريحة للوصول إلى المعلومات في قاعدة البيانات الخاصة بك
      أثناء التطوير.
  • دليل المستخدم  يحتوي على دليل للمستخدم من أجل CI.
  • ملف index.php هو الشيء الذي يقوم بكل السحر في CI كما يسمح لك بتغيير
    اسم النظام ومجلدات التطبيق.

الخطوة 3: تكوين CodeIgniter

الحصول على CI وتشغيله بسيط نوعًا ما. يتطلب معظمها تحرير بعض
ملفات التكوين.

تحتاج إلى إعداد CI ليتوجه إلى عنوان URL الأساسي الصحيح للتطبيق. للقيام بذلك، افتح نظام / تطبيق / تكيل/ config.php و
وقم بتحرير عنصر مصفوفة قاعدة _url للتوجه إلى خادمك ومجلد CI.


الخطوة 4: اختبار CodeIgniter

سنجري اختبارًا سريعًا لمعرفة ما إذا كان CI جاهزًا ويعمل بشكل صحيح. انتقل إلى http: // localhost / ci / 
يجب أن ترى ما يلي.


الخطوة 5: تكوين CodeIgniter Cont.

إذا كنت جاهزًا للعمل، فيجب أن ننهي التهيئة. بدأنا في تكوينه خصيصًا لتطبيق مرحباً بالعالم الجديد. إذا كنت ترغب في استخدام قاعدة بيانات مع التطبيق الخاص بك، (وهو ما نقوم به في هذا البرنامج التعليمي.) افتح نظام / تطبيق / تكوين / database.php وقم بتعيين عناصر المصفوفة التالية إلى قيم المقابلة لها. هذه الشيفرة تتصل إلى MySQL
قاعدة بيانات تسمى "مرحباً بالعالم " على مضيف محلي باسم المستخدم "جذر"، وكلمة المرور، "جذر".

بالإضافة إلى ذلك، بما أننا سنستخدم قاعدة البيانات بعض الشيء، فإننا نريد أن يتم التحميل التلقائي لذلك يجب أن لا نقوم بتحميلها
على وجه التحديد في كل مرة نقوم بالاتصال. افتح ملف نظام / تطبيقات / تهيئة / autoload.php
وقم بإضافة "قاعدة بيانات" إلى مصفوفةمكتبات التحميل التلقائي.

حالياً، سيكون لدى إعداد CI وحدة تحكم افتراضية تسمى "welcome.php"؛ يمكنك العثور على هذا في المجلد نظام/تطبيقات /وحدات التحكم. بالنسبة لهذا البرنامج التعليمي، قم بحذفه وافتح الملف نظام/تطبيقات /تهيئة/ routes.php الخاص بك. قم بتغيير عنصر المصفوفة الافتراضي للإشارة إلى وحدة التحكم " مرحباً بالعالم ".

لدى CI أيضًا ملف عرض لا نحتاجه. افتح المجلد نظام/تطبيقات /عرض
واحذف ملف welcome_message.php.


الخطوة 6: إنشاء قاعدة بيانات مرحباً بالعالم

نظرًا لأن هذا ليس برنامجاً تعليميًا على MySQL، سأبقي هذا القسم قصيرًا قدر الإمكان. قم بإنشاء قاعدة بيانات تسمى "مرحباً بالعالم "و
قم بتشغيل SQL التالي من خلال phpMyAdmin (أو عميل MySQL مشابه).


الخطوة 7: إنشاء نموذج مرحباً بالعالم

تعتبر النماذج اختيارية في CI، ولكنها تعتبر أفضل ممارسة من أجل استخدامها. إنها مجرد فئات PHP التي تحتوي
الوظائف التي تعمل مع المعلومات من قاعدة البيانات. اذهب 
قدما واصنع ملف helloworld_model.php
في مجلد النظام / التطبيق / النماذج.
في هذا الملف، قم بإنشاء فئة نموذج مرحباً بالعالم، وقم بإنشاء نموذج مرحباً بالعالم ودالة تسمى الحصول على البيانات.

في وظيفة الحصول على البيانات 
سوف نقوم باستخدام وظائف قاعدة بيانات السجل النشطة التي تسرع أزمنة تطوير قاعدة البيانات عند العمل
مع CI وقواعد البيانات. أساسا، فهي وظائف مبسطة لإنشاء التساؤلات.


الخطوة 8: إنشاء وحدة تحكم مرحباً بالعالم

لنقم بإنشاء وحدة تحكم ستظهر العرض، وتحميل النموذج. بهذه الطريقة، عندما
تذهب إلى العنوان http: //localhost/ci/index.php/helloworld/، سترى البيانات من قاعدة البيانات.
في المجلد النظام / التطبيق / وحدات التحكم، قم بإنشاء ملف يسمى helloworld.php.
في هذا الملف الجديد، سننشئ فئة تحمل نفس اسم الملف.

داخل هذه الفئة، تحتاج إلى إنشاء وظيفة تسمى "الفهرس". هذه هي الوظيفة التي سيتم
عرضها عندما لا يتم توفير غيرها - على سبيل المثال عندما يكون http: //localhost/ci/index.php/helloworld
قد تمت زيارته. إذا، على سبيل المثال، أنشأنا وظيفة تسمى foo، يمكننا العثور على هذا على شكل http: //localhost/ci/index.php/helloworld/foo/.

الشيء الأساسي الذي يجب تذكره هو كيفية بناء CI لعناوين URL الخاصة بها؛ على سبيل المثال، http://host/codeignitordirectory/index.php/class/function

في وظيفة فهرس التحكم، نحتاج إلى تحميل النموذج،  الاستعلام عن قاعدة البيانات، وتمرير هذه
البيانات المستعلم عنها إلى طريقة العرض. لتحميل أي موارد إلى CI على سبيل المثال، المكتبات،
المساعدات، أو طرق العرض، أو النماذج، نستخدم فئة التحميل. بعد تحميل النموذج، يمكننا الوصول إليه من خلال
اسم نموذجها ووظيفة معينة. لتمرير البيانات إلى طريقة العرض نحتاج إلى تعيينها إلى عنصر مصفوفة
ثم تمرير المصفوفة - التي تعيد إنشاء عناصر المصفوفة كمتغير في ملف العرض.

إذا قمنا بزيارة http: //localhost/ci/index.php/helloworld/ الآن، فلن يعمل؛ هذا لأن ملف العرض غير موجود.


الخطوة 9: قم بإنشاء عرض مرحباً بالعالم

ملف العرض هو ما يراه المستخدم ويتفاعل معه، ويمكن أن يكون جزءًا من صفحة أو الصفحة بأكملها. يمكنك تمرير مصفوفة من المتغيرات إلى طريقة العرض من خلال الوسيطة الثانية
من وظيفة نموذج التحميل. لصنع طريقة العرض الخاصة ببرنامجنا التعليمي، قم بإنشاء ملف جديد يسمى helloworld_view.php في المجلد نظام/تطبيقات /عرض . بعد ذلك، نحتاج فقط إلى إنشاء html العادي، عناصر الرأس
و الجسم، ثم الترويسة و فقرة للمعلومات من قاعدة البيانات. لعرض كل
السجلات الواردة من قاعدة البيانات، وضعناها في حلقة "foreach"
والتي  تدورعبر جميع العناصر.

ربما لاحظت أننا نستخدم بنية php بديلة، وهذا يوفر طريقة مناسبًة
تحفظ الوقت لكتابة البيانات الناتجة.


الخطوة 10: Ta-da وبعض الإضافات

عند زيارة "http: //localhost/ci/index.php/helloworld/"، أنت
يجب أن ترى شيئًا مشابهًا لهذا.

لكننا لم ننته بعد. هناك بعض الأشياء التي يمكنك القيام بها لتحسين تجربة CodeIgniter -
مثل إزالة ذلك الفهرس index.php المزعج من عنوان URL. يمكنك إنجاز هذه المهمة عن طريق إنشاء ملف .htaccess في المجلد الجذر، وإضافة الشفرة التالية.

ستحتاج أيضًا إلى فتح ملف config.php في نظام/تطبيقات/ تهيئة وتحريرعنصر مصفوفة index_page إلى سلسلة فارغة.

آخر خدعة أنيقة هي تشغيل إمكانية CI لتحليل بناء جملة PHP بديلة إذا
لم يتم تمكينها من قبل الخادم. للقيام بذلك، افتح الملف نفسه كما كان من قبل، نظام/تطبيقات /تهيئة/  config.php، وقم بتعيين عنصر المصفوفة إعادة كتابة علامات قصيرة  إلى TRUE.

وآمل أن يكون كل شيء على ما يرام! نتطلع إلى رؤية المزيد من البرامج التعليمية CodeIgniter مني في المستقبل.

  • اشترك في NETTUTS RSS Feed لمزيد من المقتنيات اليومية لتطوير الويب والمقالات.  


Advertisement
Advertisement
Advertisement
Advertisement
Looking for something to help kick start your next project?
Envato Market has a range of items for sale to help get you started.