منتديات بروجروماتيك التعليمية

[شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

اذهب الى الأسفل

[شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:31 pm

[دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

الدرس 1: ما هي لغة PHP
عندما يبدأ أي شخص في تعلم PHP السؤال الذي يتكرر طرحه هو: ما هي PHP؟ وكيف تعمل؟
هذا بالضبط ما سنجيب عنه في هذا الدرس، من المفيد أن تفهم الأساسيات المتعلقة بلغة PHP قبل أن تبدأ تطوير صفحات موقعك بها، فهم الأساسيات سيعجل من سرعة تعلمك بشكل كبير.
لنبدأ!

ما هي PHP؟

PHP هي اختصار Personal Home Pages، لكنها الآن تعني PHP: Hypertext Preprocessor.
طورت في البداية من قبل المطور الدينماركي راسموس ليدروف، بعد ذلك تحولت لمشروع برنامج حر، PHP ليست من المعايير القياسية للويب لكنها تقنية مفتوحة المصدر، PHP ليست لغة برمجة حقيقية لكنها تسمح لك بدمجها في صفحات موقعك.
لوصف ما هي صفحة PHP يمكنك أن تقول بأنها ملف بامتداد .php يحوي خليطاً من HTML ولغة البرمجة PHP وهي تعمل على مزود ويب.
ملاحظة المترجم: المقصود هنا أن PHP ليست لغة برمجة كبقية اللغات الأخرى، بل هي لغة متخصصة لتطوير المواقع فقط وهي لغة مرنة يمكن دمجها في صفحات المواقع.

كيف تعمل PHP؟

أفضل طريقة لشرح كيف تعمل PHP هي بمقارنتها مع HTML، تصور أنك كتبت عنوان صفحة HTML (مثال [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]) في حقل العناوين في المتصفح، بهذه الطريقة أنت تطلب صفحة HTML، يمكن تصوير هذه العملية بهذا الشكل:

كما ترى المزود ببساطة يرسل ملف HTML إلى الزبون أي إلى حاسوب الزائر، لكن إذا كتبت [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] - أي طلبت صفحة PHP - سيحتاج المزود لمزيد من بذل الجهد:

المزود عليه أولاً أن يقرأ ملف PHP بعناية ليرى إن كان هناك أي مهمات عليه تنفيذها، فقط عندما ينتهي المزود مما يجب عليه فعله سيرسل النتيجة إلى الزبون، من الضروري أن تفهم بأن الزبون يرى فقط نتيجة عمل المزود وليس الأوامر الموجودة في ملف PHP.
هذا يعني أنك إن نقرت على "view source" أو "استعراض المصدر" في صفحة PHP فلن ترى أوامر PHP بل فقط وسوم HTML، لذلك لا يمكنك أن ترى كيف كتبت صفحة PHP عندما تحاول استعراض مصدرها، عليك أن تتعلم اللغة بطريقة مختلفة، بقراءة هذا الدرس مثلاً.
ما تتعلمه في هذا الدرس هو ما تكتبه من أوامر للمزود!
في البداية عليك أن تحصل على مزود، لكن لا تقلق، لا يجب عليك شراء حاسوب جديد، أنت بحاجة فقط إلى تثبيت برنامج على حاسوبك ليجعله يعمل كمزود، الخيار الآخر هو أن تملك موقعاً مستضافاً على مزود يدعم PHP، عندها عليك أن تكون على اتصال بالإنترنت عندما تبرمج.
الدرس التالي سيكون حول كيفية إعداد حاسوبك ليعمل كمزود.


[دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:32 pm

الدرس 2: المزودات
PHP هي تقنية من جهة المزود، لذلك تحتاج لمزود يشغل PHP، لكن هذا لا يعني أنك بحاجة لشراء أي شيء، هناك خيارات مختلفة للحصول على مزود.
أنت تحتاج لخيار واحد، هذا الدرس مقسم إلى ثلاثة أقسام، الأول مقدمة للخيارات الثلاثة واختر منها ما يناسبك، عندما يكون لديك مزود يعمل سنكمل الدرس في الجزء الثالث لنكتب أول صفحة PHP.

الخيار 1: موقع مستضاف على مزود

يمكنك أن تختار مزوداً يستضيف موقعك ويدعم PHP.

الخيار 2: تثبيت PHP على حاسوبك

تثبيت PHP على حاسوبك ليس نزهة في الحديقة، هذا الخيار مناسب لخبراء مستخدمي الحاسوب، ويمكن بالطبع إنجاز تثبيت PHP على حاسوبك، هنا ستجد روابط لتنزيل PHP ودليلاً لتثبيتها على أنظمة مختلفة:

خيار 3: XAMPP

XAMPP هو برنامج يجعل من السهل والممكن لنا أن نشغل PHP على حواسيبنا دون أن نثبتها بأنفسنا.



لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:35 pm

الدرس الثالث: إنشاء أول صفحة PHP
من الدرس الأول والثاني تعلمت القليل حول ماهية لغة PHP، ثبت مزوداً على حاسوبك أو يمكنك الوصول لمزود يدعم هذه اللغة، الآن أنت جاهز لتبدأ في كتابة أول صفحة PHP، الدرس سيكون سهلاً وبسيطاً، لكن بعد أن تنجز الدرس ستفهم ما هي لغة PHP وماذا يمكنك إنجازه باستخدامها.
ببساطة ملف PHP هو ملف نصي بامتداد .php ويتألف من:

  • نص
  • وسوم HTML
  • برمجة بلغة PHP

أنت تعرف مسبقاً ما هو النص وما هي وسوم HTML، لذلك لنلقي نظرة على برمجة PHP.

برامج PHP

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

مثال: Hello World!

ابدأ في إنشاء صفحة HTML عادية لكن أعطي للملف اسم page.php واحفظه في المجلد الرئيسي للموقع:

وسوم HTML يجب أن تكون بهذا الشكل:

الكود:
   <html>
   <head>
   <title>My first PHP page</title>

   </head>
   <body>

   </body>
   </html>



كما تتذكر من الدرس الأول، كل شيء في PHP متعلق بكتابة أوامر للمزود، لذلك دعنا نكتب بعض الأوامر.
في البداية نحن بحاجة لأن نخبر المزود أين ستبدأ PHP ومتى ستتوقف. في PHP تستخدم وسوم و?> لتحديد بداية ونهاية أوامر PHP التي يجب على المزود تنفيذها، في معظم المزودات استخدام كوسم بداية فقط سيكون كافياً لكن هي الطريقة الأفضل لكي عندما تستخدم PHP لأول مرة في الملف.
الآن أضف التالي لوسوم HTML:

الكود:
<html>
   <head>
   <title>My first PHP page</title>
   </head>
   <body>

   <?php 

   echo "<h1>Hello World!</h1>";

   ?>

   </body>
   </html>




عندما تستعرض ملف PHP في المتصفح يجب أن يكون الملف بهذا الشكل:

الأمر يصبح مثيراً أكثر عندما تنظر لمصدر الصفحة في المتصفح باختيار "view source":

أوامر PHP ذهبت! كما تتكر في الدرس الأول المزود وحده الذي يستطيع أن يرى أوامر PHP، - الزبون (أي المتصفح) يرى النتائج فقط!
لنلقي نظرة على ما حدث، نحن طلبنا من المزود أن يكتب

Hello World!

، بلغة تقنية أكثر سنقول بأننا استخدمنا الوظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] لنكتب سلسلة محارف محددة للزبون (المتصفح) والفاصلة المنقوطة تنهي الأمر، لكن لا تخف، في هذا الدرس سنحاول أن نبقي اللغة التقنية في حدها الأدنى.
في مثالنا الأول من الواضح أنه ليس مثيراً للحماس، لكن انتظر فقط! من الآن وصاعداً ستزداد الأمور حماساً، لنلقي نظرة على مثال آخر.

مثال: الآن!

لنجعل المزود يكتب شيئاً آخر، يمكننا مثلاً أن نطلب منه أن يكتب تاريخ اليوم والوقت:

الكود:
<html>
   <head>
   <title>My first PHP page</title>

   </head>
   <body>

   <?php 

   echo date("r");

   ?>

   </body>
   </html>




هذا سيظهر بهذا الشكل في المتصفح:

ووسوم HTML في المقابل ستكون:

الآن الأمور تبدو مسلية أكثر، أليس كذلك؟
جعلنا المزود يكتب التاريخ والوقت عندما تعرض صفحة PHP، لاحظ أنك إذا جربت تحديث الصفحة سترى وقتاً جديداً يكتب، المزود يكتب التاريخ والوقت الحالي في كل مرة ترسل الصفحة إلى الزبون.
من المهم أيضاً أن تلاحظ بأن مصدر HTML يحتوي فقط التاريخ وليس أوامر PHP، لذلك المثال لا يتأثر بأي متصفح استخدم، في الحقيقة كل الخصائص التي تعتمد على تقنيات جهة المزود ستعمل في كل المتصفحات!
ومرة أخرى لاحظ الفاصلة المنقوطة بعد سطر الأمر، هذه الفاصلة مهمة جداً ويجب أن تضاف وإلا لن يعمل البرنامج.
في المثال استخدمنا وظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، وهي وظيفة تعطينا الوقت والتاريخ الحاليين في المزود.
لنجرب إضافة المزيد للمثال من خلال كتابة سلسلة محارف ووظيفة برمجية - يفصل بينهما "." (نقطة) - هكذا:

الكود:
   <html>
   <head>
   <title>My first PHP document</title>
   </head>
   <body>

   <?php
   
   echo "<p>Current date and time: " . date("r") . "</p>";

   ?>

   </body>
   </html>




ستظهر بهذا الشكل في المتصفح:

ووسوم HTML في المقابل ستكون:

في الدرس التالي سنلقي نظرة مفصلة أكثر على وظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] والأشكال المختلفة للتاريخ والوقت.


عدل سابقا من قبل عابر سبيل في الجمعة يونيو 17, 2016 6:40 pm عدل 1 مرات


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:36 pm

الدرس الرابع: التعامل مع الوقت والتاريخ
في هذا الدرس سنلقي نظرة على الخيارات المختلفة للتعامل مع الوقت والتاريخ في PHP، في الدرس السابق استعرضنا أمثلة بسيطة لنشرح ماهية اللغة، في هذا الدرس سنلقي نظرة على وظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] .

وظائف الوقت والتاريخ

PHP تقدم مجموعة واسعة من [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، في هذا الدرس سنلقي نظرة على أهم هذه الوظائف: [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط].
مع وجود الكثير من العوامل المختلفة يمكن لوظيفة[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أن تعطي التاريخ الحالي أو الوقت بأشكال مختلفة، بعض أكثر العوامل المفيدة هي:
date("y")
يعطينا السنة الحالية، وبتاريخ اليوم فهو يعطينا: 16
date("m")
يعطينا الشهر الحالي، وبتاريخ اليوم فهو يعطينا: 06
date("F")
يعطينا اسم الشهر الحالي، وبتاريخ اليوم فهو يعطينا: June
date("d")
يعطينا اليوم الحالي في الشهر، وبتاريخ اليوم فهو يعطينا: 17
date("l")
يعطينا اسم اليوم، وبتاريخ اليوم فهو يعطينا: Friday
date("w")
يعطينا رقم اليوم في الأسبوع، وبتاريخ اليوم فهو يعطينا: 5
date("H")
يعطينا الساعة الحالية، وبالتوقيت الحالي فهو يعطينا: 18
date("i")
يعطينا الدقيقة الحالية، وبالتوقيت الحالي فهو يعطينا: 35
date("s")
يعطينا الثانية الحالية، وبالتوقيت الحالي فهو يعطينا: 51
هذا المثال يوضح استخدام وظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]:

الكود:
   <html>
   <head>
   <title>Time and date</title>

   </head>
   <body>

   <?php
   
   echo "<p>Today it's " . date("l") . "</p>";

   ?>
   
   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

الوقت هو 1466181351

وظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] تعطينا الوقت الحالي كعدد من الثواني منذ الواحد من يناير 1970 وبالتحديد من الساعة 12 مساء بتوقيت غرينتش.
الكود:



   
 
   
   <html>
   <head>
   <title>time and date</title>
   </head>
   <body>

   <?php 

   echo "<p>It's been exactly " . time() . " seconds since January 1, 1970, 12:00 PM, GMT </ p> ";

   ?>

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
الوقت المعبر عنه بعدد الثواني منذ 1 يناير 1970 الساعة 12 مساء بتوقيت غرينتش يسمى "timestamp" أو الطابع الزمني ويسمى أيضاً الطابع الزمني ليونكس وهو مفيد عند التعامل مع التواريخ والأوقات في المستقبل أو الماضي.
تلقائياً وظيفة[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] تستخدم الطابع الزمني الحالي أي القيمة الحالية لوظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، لكن من خلال عوامل إضافية يمكنك أن تحدد طابعاً زمنياً مختلفاً وهكذا يمكنك التعامل مع الماضي والمستقبل، في المثال أدناه حددنا الثانية صفر من تاريخ 1 يناير 1970 الساعة 12 مساء بتوقيت غرنيتش، هكذا يمكننا معرفة أي يوم كان هذا:
الكود:



   
 
   
   <html>
   <head>
   <title>time and date</title>
   </head>
   <body>

   <?php
   
   echo "<p>January 1, 1970 was a " . date("l",0) . "</p>";

   ?>

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
يزداد تعقيد عد الثواني منذ 1 يناير 1970 إلى وقت محدد في المستقبل أو الماضي، إلا إن كنت عبقري رياضيات! لكن يمكنك لوظيفة مفيدة أن تساعدك: [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، التي يمكنها أن تحسب عدد الثواني.
طريقة كتابة قيم [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] هي (ساعة، دقيقة، ثانية، شهر، يوم، عام)، المثال أدناه يحول الوقت لأول خطوة على القمر 21 يوليو 1969 في 02:56:

الكود:
   <html>
   <head>
   <title>time and date</title>
   </head>
   <body>

   <?php 
   
   echo mktime (2,56,0,7,21,1969);

   ?>

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
لاحظ أنه يعطينا رقماً سلبياً لأن التاريخ الذي طلبناه كان قبل 1 يناير 1970.
يمكننا أن نجمع بين هذه الوظيفة ووظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] لنجد أي يوم وقع هذا الحدث التاريخي.

الكود:
<html>
   <head>
   <title>time and date</title>
   </head>
   <body>

   <?php
   
   echo date("l", mktime(2,56,0,7,21,1969));
   
   ?>
   
   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]

كيف يمكنك استخدامها؟

كل ما سبق يبدو نظرياً حتى الآن، كيف يمكنك أن تستخدم وظيفة مثل [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، الأهم من ذلك متى ستتعلم شيئاً يمكنك أن فعلاً أن تضيفه في صفحاتك؟
الإجابة هي أن ما تتعلمه هنا هي لبناء البناء الأساسية، الحد الوحيد لما يمكنك فعله بها هو إبداعك وخيالك! سأتجرأ لأقول بأنك تعلمت أكثر مما تظن، مثلاً هل تظن أنه بإمكانك إنشاء موقع يعرض خلفية للصفحة تتغير بحسب أيام الأسبوع ويعمل على كل المتصفحات؟
بالتأكيد يمكنك، ألقي نظرة على المثال:
الكود:

 
   
 
   
   <html>
   <head>
   <title>time and date</title>
   </head>

   <body background="background_<?php echo date("w"); ?>.png">

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
المثال أعلاه بصور متغيرة، ببساطة يتطلب منك أن تصنع 7 صور لخلفية الموقع وتسمي كل واحدة منها background_1.png وbackground_2.png وbackground_3.png ... إلخ.
إن زار مستخدم موقعك يوم الثلاثاء الموقع سيعرض صورة background_2.png كخلفية، في اليوم التالي سيعرض background_3.png، بسيط وسهل!
في الدرس التالي ستتعلم لبنات بناء جديدة يمكن استخدامها لصنع حلقات وتكراراً في برنامجك.
PHP ممتعة، أليس كذلك؟


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:42 pm

الدرس الخامس: الحلقات
في PHP من الممكن أن تدير تنفيذ البرامج بهياكل تحكم مختلفة، في هذا الدرس سنلقي نظرة على الحلقات (loop)، الحلقات يمكن استخدامها لتكرار أجزاء من البرنامج بعدد محدد من المرات أو إلى أن يتحقق شرط محدد.

حلقات while

طريقة كتابة حلقة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] هي:
الكود:

 
   

   
   while [i](condition)[/i] {
      Statement
   }




بناء الحلقة يمكن ترجمته إلى العربية: إفعل كذا بينما الشرط المحدد محقق.
لنلقي نظرة على مثال بسيط:
الكود:


   
   
 
   
   <html>
   <head>
   <title>Loops</title>

   </head>
   <body>

   <?php

   $x = 1;
   
   while ($x <= 50) {
     echo "<p>This text is repeated 50 times</p>";
     $x = $x + 1;
   }
   ?>

   </body>

   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
في المثال استخدمنا المتغير المسمى "$x"، كما ترى المتغيرات في PHP دائماً تبدأ برمز "$"، من السهل نسيان هذه النقطة في البداية لكن من الضروري تذكر ذلك وإلا لن يعمل البرنامج.
بعد هذه النقطة المثال يشرح نفسه تقريباً، في البداية المتغير $x أعطيناه القيمة 1، ثم الحلقة تسأل المزود أن أن يكرر النص ما دام أن $x أقل أو يساوي 50، في كل تكرار المتغير $x ستزداد قيمته بإضافة 1.

حلقات for

هناك طريقة أخرى لاستخدام الحلقات وهذا من خلال الأمر [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] بهذا الشكل:


الكود:
   for (Initialization; Condition; Step) {
       Statement
   }




البيان (statement) يكرر ما دام أن التهيئة (Initialization) والخطوة (step) يحققان الشرط (Condition)، إن لم تفهم هذا فانظر إلى المثال:
الكود:

 
   
   
 
   
   <html>
   <head>

   <title>Loops</title>
   </head>
   <body>

   <?php

   for ($x=0; $x<=50; $x=$x+5) {
     echo "<p>variable $x is now = " . $x . "</p>";
   }
   ?>

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
في المثال أعلاه المتغير $x يزداد بقيمة 5 في كل حلقة، التكرار سيستمر ما دام أن $x أقل من أو تساوي 50، لاحظ أيضاً أن القيمة $x تستخدم كجزء من الجملة.
هذا مثال آخر:
الكود:



   
 
   
   <html>
   <head>

   <title>Loops</title>
   </head>
   <body>

   <?php

   for ($x=1; $x<=6; $x=$x+1) {
     echo "<h" . $x . ">Heading level " . $x . "</h" . $x . ">";
   }
   ?>

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
هل فهمت المثال؟ في البداية حددنا قيمة المتغير $x بالعدد واحد، ثم في كل تكرار نكتب عنواناً على مستوى $x أي (h1 ثم h2 ثم h3 ... إلخ) إلى أن تصبح قيم $x تساوي ستة.

حلقات داخل حلقات

كمبدأ، ليس هناك حد لكيفية استخدام الحلقات، فمثلاً يمكنك بسهولة أن تضع حلقات داخل حلقات وهكذا تنشأ العديد من التكرار.
لكن احذر! PHP تصبح بطيئة ومعقدة ويكبر حجم البرنامج ، ألقي نظرة على المثال التالي حيث باستخدام 3 حلقات يمكننا كتابة 16 مليون لوناً!
لكي لا نجعل الصفحة بطيئة قللنا العدد بأن جعلنا الخطوة محدودة بالرقم 30، وبالتالي قللنا عدد الألوان إلى 512.
الكود:

 
   

   
   <html>

   <head>
   <title>Loops </title>
   </head>
   <body>

   <?php
 
   for ($intRed=0; $intRed<=255; $intRed=$intRed+30) {

     for ($intGreen=0; $intGreen<=255; $intGreen=$intGreen+30) {

         for ($intBlue=0; $intBlue<=255; $intBlue=$intBlue+30) {
   
        $StrColor = "rgb(" . $intRed . "," . $intGreen . "," . $intBlue . ")";
       
        echo "<span style='color:" . $StrColor . "'>" . $StrColor . "</span>";
   
         }
     }
   }
   ?>

   </body>
   </html>




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


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:48 pm

الدرس السادس: الشروط
الشروط تستخدم لتنفيذ أجزاء من البرنامج فقط عندما تستوفى متطلبات محددة مسبقاً، فمثلاً الشرط يمكن أن يكون تاريخ بعد الأول من يناير 2012 أو متغير أكبر من 7.

If...

أول نوع من الشروط سنلقي نظرة عليه هو [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، وهو يكتب بهذا الشكل:

الكود:
   if (condition) {
     statement
   }




مرة أخرى، طريقة كتابة الأمر قريبة جداً من اللغة الطبيعية، إذا (If) تحقق شرط فنفذ كذا وكذا، لنلقي نظرة على مثال بسيط:
الكود:



   
 
   
   <html>

   <head>
   <title>Loops </title>
   </head>
   <body>

   <?php

   $x = 2;

   if ($x > 1) {
     echo "<p>variable $x is greater than 1 </p>";
   }
   
   ?>

   </body>
   </html>




if ... else ...

النوع التالي من الشروط الذي سنلقي نظرة عليه هو [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]، وهو ما يمكن أن يكتب بهذا الشكل:


الكود:
   if (condition) {
     statement
   }
   else {
     statement
   }




مرة أخرى، أسلوب كتابة الأمر قريب من اللغة الطبيعية: إذا (if) تحقق شرط نفذ كذا وكذا، وإلا else نفذ شيئاً آخر.
في [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] تعلمت كيف تجد رقم الشهر، في المثال التالي سنستخدم رقم الشهر في حلقة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] والشرط وضعت لمعرفة الموسم:
الكود:

 

   
 
   
   <html>
   <head>
   <title>Conditions</title>
   </head>
   <body>

   <?php

   if (date ("m") == 3) {
     echo "<p>Now it's spring!</p> ";
   }
   else {
     echo "<p>I do not know what season it is!</p> ";   
   }

   ?>

   </body>
   </html>




[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
كما ترى، الشرط ليس شرطاً ذكياً وفقط يعمل إن كان الشهر مارس!
على أي حال هناك كثير من الطرق لتحسين الشرط وزيادة دقته، أدناه قائمة العوامل (operators) التي يمكن استخدامها في الشروط:
== يساوي
< أقل من
> أكبر من
<= أقل من أو يساوي
>= أكبر من أو يساوي
!= لا يساوي
بالإضافة إلى ذلك هناك عوامل منطق:
&& و
|| أو
! لا
العوامل يمكن استخدامها لوضع شروط أكثر دقة، الآن يمكن توسيع المثال أعلاه لإدراج كل شهور الربيع:
الكود:

 

   
 
   
   <html>
   <head>
   <title>Conditions</title>

   </head>
   <body>

   <?php
 
   if (date("m") >= 3 && date("m") <= 5) {
     echo "<p> Now it's spring!</p> ";
   }
   else {
     echo "<p> Now it's either winter, summer or autumn!</p> ";
   }
   
   ?>

   </body>
   </html>





لنلقي نظرة مقربة على الشرط المحسن::
الكود:
   date("m") >= 3 && date("m") <= 5



يمكن ترجمة الشرط إلى:
إن كان الشهر أكبر من أو يساوي 3، والشهر أقل من أو يساوي 5


شرط ذكي، أليس كذلك؟ العوامل تلعب دوراً مهماً في كثير من أجزاء PHP.
لكن لا زال البرنامج يعمل لشهور مارس، أبريل ومايو، بقية الشهور لم تذكر في الشرط، لذلك دعنا نطور الشرط أكثر.

if ... elseif ... else...

باستخدام [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] يمكننا توسيع الشرط ليعمل على كافة الشهور:

الكود:
   <html>
   <head>
   <title>Conditions</title>

   </head>
   <body>

   <?php
 
   if (date("m") >= 3 && date("m") <= 5) {
     echo "<p>Now it's spring!</p>";
   }

   elseif (date("m") >= 6 && date("m") <= 8) {
     echo "<p>Now it's summer!</p>";
   }

   elseif (date("m") >= 9 && date("m") <= 11) {
     echo "<p>Now it's autumn!</p>";
   }

   else {
     echo "<p>Now is winter!</p>";
   }
   
   ?>

   </body>
   </html>





[ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]
لكتابة الشروط عليك أن تفكر بشكل منطقي وتكون منهجياً، المثال أعلاه بسيط لكن الشروط يمكنها أن تصبح معقدة جداً.

switch ... case

هناك طريقة أخرى لكتاب الشروط باستخدام [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط]:

الكود:
switch (expression) {
 
   case 1:
     statement
     break;   
   case 2:
     statement
     break;
   default:
     statement
     break;
   }




هذه الطريقة تعتمد على الشرط أو expression ثم تضع قائمة بمختلف الأجوبة والقيم من خلال البيان أو statements، أسهل طريقة لشرح هذا الأمر هو من خلال مثال.
كما تتذكر في الدرس الرابع وظيفة [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] تعطينا رقم اليوم في الأسبوع، هذا يمكن استخدامه في المثال بكتابة اسم اليوم بدلاً من رقمه:
الكود:

 

   
 
   
   <html>
   <head>
   <title>Conditions</title>
   </head>
   <body>

   <?php
 
   switch(date("w")) {
   
   case 1:
     echo "Now it's Monday";
     break;
   case 2:
     echo "Now it's Tuesday";
     break;
   case 3:
     echo "Now it's Wednesday";
     break;
   case 4:
     echo "Now it's Thursday";
     break;
   case 5:
     echo "Now it's Friday";
     break;
   case 6:
     echo "Now it's Saturday";
     break;
   default:
     echo "Now it's Sunday";
     break;
   
   }
   
   ?>

   </body>
   </html>




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


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:49 pm

الدرس السابع: ضع تعليقات في برامجك
كما قد لاحظت، برامج PHP يمكنها أن تبدو مثيرة للحيرة، في هذا الدرس سنتحدث عن أهمية التعليقات وكيف تضعها في برامجك.

لماذا من المهم أن تضع تعليقات في برامجك؟

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

كيف تضع التعليقات؟

من السهل أن تضع تعليقات في برنامجك، ببساطة ابدأ التعليق بعلامة: "//".
ألقي نظرة على هذا المثال من الدرس الخامس ، أضفنا فيه تعليقات:

الكود:
<html>
   <head>
   <title>Loops</title>
   </head>
   <body>

   <?php

   // Here we write color codes using three loops

   // Red can be between 0 and 255
   for ($intRed=0; $intRed<=255; $intRed=$intRed+30) {

     // Green can be between 0 and 255
     for ($intGreen=0; $ intGreen<=255; $intGreen=$intGreen+30) {

         // Blue can be between 0 and 255
         for ($ intBlue=0; $intBlue<=255; $intBlue=$intBlue+30) {

         // The color code is made on the form rgb(red,green,blue)
        strColor = "rgb(" . intRed . "," . intGreen . "," . intBlue . ")"

         // Now we write the color code to the client
        echo "<span style='color:" . $strColor . "'> " . $ strColor . " </span>";

         // Closes the loops
         }
     }
   }

   ?>




من أجل هذا المثال أضفنا المزيد من التعليقات لنوضح كيف أنك تستطيع تصحيح البرنامج بسهولة مع وجود التعليقات.
لذلك، تذكر أن تضع تعليقات في برنامجك!


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

رد: [شرح] [دورة كاملة] دورة تعليم أكواد php من البداية حتى الإحتراف من منتديات الصوالحية التعليمية

مُساهمة من طرف عابر سبيل في الجمعة يونيو 17, 2016 6:51 pm

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

ما هي المصفوفة؟

المصفوفة (array) هي مجموعة من من العناصر المفهرسة حيث كل عنصر له رقم تعريف خاص به.
يبدو هذا مثيراً للحيرة، لكنها في الواقع ليست بهذا القدر من التعقيد.
تصور قائمة من الكلمات فصلنا بينها باستخدام فاصلة، تسمى القائمة مفصولة بفواصل، ويمكنها أن تكون بهذا الشكل:
apples, pears, bananas, oranges, lemons


جرب أن تتخيل تقسيم القائمة عند كل فاصلة، ثم أعطي كل قسم رقماً مميزاً كما في الصورة:

ما تراه هو مصفوفة، يمكننا مثلاً أن نسمي المصفوفة فواكه أو "fruits"، الفكرة هي أنك تستطيع الوصول إلى المصفوفة برقم وتحصل على قيمة، كما في القائمة أدناه:
fruits(0) = apples
fruits(1) = pears
fruits(2) = bananas
fruits(3) = oranges
fruits(4) = lemons
هذه هي فكرة المصفوفات، الآن لنستخدمها عملياً.

كيف تستخدم المصفوفة؟

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

الكود:
[code]   <?php

   $fruitlist = "apples, pears, bananas, oranges, lemons";
   
   ?>[/code]


لست شخصا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
لكننى لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
و لا [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] أحد بأشياء [ندعوك للتسجيل في المنتدى أو التعريف بنفسك لمعاينة هذا الرابط] ..
avatar
عابر سبيل
مدير الموقع
مدير الموقع

الجنس : ذكر
الدوله : مصر
المهنه :
الهوايه :
نوع المتصفح :
الحاله :
عدد المساهمات : 270
نقاط : 754
السٌّمعَة : 9
تاريخ الميلاد : 01/01/1995
تاريخ التسجيل : 07/09/2015

معاينة صفحة البيانات الشخصي للعضو http://progromatic.ahlamontada.com

الرجوع الى أعلى الصفحة اذهب الى الأسفل

الرجوع الى أعلى الصفحة


 
صلاحيات هذا المنتدى:
لاتستطيع الرد على المواضيع في هذا المنتدى