نحن الآن في بيئة ممتازة للعمل على PHP وذلك من خلال الجزء الأول, الآن ننتقل إلى الجزء الثاني من الدورة وهو تعلم أساسيات الـ PHP, تقريباً مثل أي لغة برمجة بمفهوم البرمجة كوجود المتغيرات وإمكانية وضع ملاحظات نصية ووجود أنواع من البيانات, ننطلق مباشرة بسم الله.
أساسيات PHP
تعرفنا على الأمر echo و print في الجزء الأول من الدرس وهما أمر طباعة النص في الصفحة.
الآن سنتعرف كيف نقوم بالتعامل مع شيء يسمى متغير وبالإنجليزي (Variable) هذا المتغير هو مخزون بيانات أي أنه يقوم بتخزين البيانات فيه, لحسن الحظ أن المتغيرات في PHP لا يشترط بتعريف نوع البيانات التي سيتم تخزينها في المتغير حيث أن لغات البرمجة المختلفة تشترط عند تعريف متغير أن يتم تحديد نوعه مثلاً هل هو متغير نصي أو متغير رقمي أو متغير من أي نوع آخر,
إنشاء/تعريف متغير
طريقة إنشاء أو تعريف متغير في الـ PHP سهلة جداً فقط أكتب $ ثم اسم المتغير الذي تريد تعريفه ومن ثم نعطيه القيمة التي نريد تخزينها فيه.
<?php
$welcome = "مرحباً بك في عالم التقنية" ;
$name = "عبدالملك الثاري" ;
?>
في هذا الكود البسيط قمنا بإنشاء متغيرين, كل واحد منهما يحتوي على قيمة معينة
ولكن مع هذا الكود البسيط فهناك عدة ملاحظات وعدة شروط :
الملاحظات :
- المسافات بين الأوامر لا يتم إعطائها أي اهتمام من قبل PHP فمثلاً لو كانت المسافات كبيرة أو صغيرة بينهم فلا تفرق
- بالإمكان جعل الكود السابق في سطر واحد بسهولة ودون أن يتأثر الكود منطقياً وطبعاً لكن يفضل جعله بشكل مرتب وجميل لتطويره لاحقاً وفهمه بسهولة
- هناك فاصلة منقوطة تجدونها في آخر كل أمر وذلك يعني نهاية هذا الأمر
- لم نقم بطباعة أي شي فلو استعرضنا الصفحه في المتصفح فستكون صفحة بيضاء, ولكن تم حفظ في الذاكرة قيمة متغيرين يمكننا الاستفاده منهما لاحقاً
- العلامة “” تعني أن القيمة التي بداخلها نصيه ويمكن كتابتها ‘هكذا’ وحتى لو كانت أرقام كهكذا “123” فهي تزال قيمة نصية
الشروط :
- اسم المتغير يجب أن يبدأ بحرف أو _ فلا يبدأ برقم أو رمز.
- اسم المتغير يمكن أن يحتوي فقط على الحروف الإنجليزية أو الأرقام أو _
- اسم المتغير يجب أن لا يحتوي على مسافات
حسناً لنحاول الآن أن نظهر شيء منطقي في الكود السابق وذلك بأمر طباعة للمتغيرين السابقين.
<?php
$welcome = "مرحباً بك في عالم التقنية" ;
$name = "عبدالملك الثاري" ;
echo($welcome . " مع أخوك الكاتب / " . $name);
?>
في هذا الكود قمنا بكتابة الأمر echo لطباعة المتغيرين السابقين, وستلاحظون أننا قمنا بربطهما مع بعض باستخدام النقطة . فنعم هذه النقطة يجب كتابتها لكي يتم جمع عدة نصوص مع بعضها البعض داخل قيمة واحدة أو أمر واحد, فكان بإمكاننا كتابته كالتالي :
<?php
$welcome = "مرحباً بك في عالم التقنية" ;
$name = "عبدالملك الثاري" ;
echo($welcome);
echo(" مع أخوك الكاتب / ");
echo($name);
?>
ولكن وفرنا ذلك بكتابته بصورة جميلة وواضحة في سطر واحد.
وستكون نتيجة الكود السابق هي :
مرحباً بك في عالم التقنية مع أخوك الكاتب / عبد الملك الثاري
الآن كنا نطرح أمثلة على النصوص وسنطرح حالياً عن الأرقام وكيفية التعامل معها.
يتم إعطاء قيمة المتغير رقم وذلك بدون العلامة “” أي كالتالي :
<?php
$num1 = 100;
$num2 = 200;
echo ( $num1 + $num2 );
?>
تم استخدام العلامة + وهي علامة حسابية وذلك لنقوم بعملية حسابية فستكون النتيجة 300 فلو كتبنا بدل علامة الجمع علامة نقطة فسيتم جمع المتغيرين بالطريقة التالية 100200 وليست عملية حسابية بوجود العلامة الحسابية
والعلامات الحسابية يمكنك معرفتها من خلال الجدول التالي :
أحياناً نحتاج إلى زيادة قيمة معينة بالجمع أو الطرح أو الضرب وغيرها فيمكنك ذلك باستخدام ببساطة اختصار كالتالي :
التعليقات/الملاحظات :
يمكننا كتابة ملاحظات على نفس الكود البرمجي باستخدام العلامات التالية :
<?php
$num1 = 100; // الرقم الأول
$num2 = 200; // الرقم الثاني
/* الكود التالي يقوم بعملية حسابية
وهذه الملاحظة يمكن كتابتها في أكثر من سطر
سطرين ثلاثة وأربعة وحتى يتم إغلاقها كالتالي */
echo ( $num1 + $num2 ); // الناتج 300
?>
فكل ما تم كتابته في الكود السابق وباللون الرصاصي لن يتم عرضه في الصفحة مجرد تعليقات وملاحظات في نفس الكود, هذه الملاحظات والتعليقات مهمة جداً لترصد ومتابعة مشروعك ومعرفة كل أمر ماذا تريد منه لكي يسهل عليك تطويره لاحقاً وفهم الكود مباشرة من خلال التعليقات.
نكتفي بهذا القدر اليوم, في الدرس القادم سيتم شرح طريقة التحكم عن طريق أوامر أكثر منطقية مثل If..Else.. و While و For و غيرها لنقوم بالتحكم بالكود بالبرمجة بشكل قوي وممتع.
نلقاكم في الدرس القادم بإذن الله, وإذا كانت هناك أي استفسارات في هذا الدرس نرحب بها, وشكراً لكم :) .
جزاك الله خيراً …وبارك الله فيك
مشاء الله اداء رائع وسرعة ملحوظة
موفق باذن الله فى تقديم باقى الدروس وفى انتظار المراحل الاخيرة :)
تسلم ايدك استاذ عبد الملك ;)
رائع جدا
كنت افضل لو تدينا امثله نسويها
في صحتنا
اقصد تعطينا كود مكتوب لعمليه حسابيه
نستخدم غيها الرموز الجديده ونجرب على راحتنا عشان تنسخ الافكار بعقولنا
وتذكر ان ضرب المثل من اساليب التعليم للنبي صلى الله عليه وسلم
على العموم انت اعلم بالي تقدمه وانا معاك للاخير بأن الله
اعتقد ان هذا شرح مبداى لتوضيح اساسيات اللغة
سوف يله الامثلة والتطبيقات
جزاك الله خيرا أخي عبدالملك
درس جميل وواضح
حبيت اسال بالنسبة للعمليات الحسابية هل يجب أن نضعها بين أقواس مثلا
لدي متغيرين مجموعها نضربها في 2
هل يكفي ان نكتب
num1+num2*2
أو انه يجب كتابتها
num1+num2)*2)
الذي اعرفه في اللغات الاخرى ان هنالك ترتيب عند المعالج فمثلا سوف يبدا بالضرب ثم القسمه ثم الجمع …..وهكذا
هل هي نفس الطريق متبعه في php
شكرا جزيلا لك
سؤال ممتاز أخوي م.عبدالله , بالنسبة لترتيبها فمثل ما تفضلت نعم كباقي لغات البرمجة, ولكي يتم تحديد الحسابات العملية بشكل صحيح يتم ضمها في أقواس حسب المطلوب كما تفضل نعم نفس الطريقة متبعة.
شكراً لك على الإضافة الجميلة.
الله يجزاك خير اخوي
تسلم أخوي Vexard ومرورك اسعدني :)
موجوده الأمثله يالغالي فوق تقدر تجرب الأمثله الموجوده,
طبعاً راح يكون هناك أمثله أكثر تعقيداً لكن نبي نعطي فرصه للمبتدئين في هالمجال عشان تغطي الدورة جميع الفئات, وشكراً لك
جزاك الله خيرا..
وأجعله في ميزان حسناتك إن شاء الله ..
وبإنتظار الدرس الثالث ، وإن امكن أن تُبلغنا بالبريد الإلكتروني نكون شاكرين لك
بارك الله فيك اخوي عبدالملك الثاري على الجهد ونطلب منك التميز والتوسع بشكل اكبر
تحت مبدأ OOP
وبعد اذنك اذا تسمح لي بهذي المداخلة رداً على الأخ م.عبدالله
اللغات في العمليات الحسابيه لها ترتيب عند التنفيذ وتبدأ بالاقواس
تسلم يا طويل العمر …
الله يجزاك خير …درس سهل وخفيف ..
يعطيك العافيه على الشرح الوافي
لكن عندي سؤال اذا تابعنا الدوره نقدر نبرمج سكربت العادي بدون اي مشاكل
وشكراً لك على المجهودي الطيب ..
بارك الله فيك اخي عبدالملك واخي Q8Developer
بالنسبة لترتيب العمليات التي يقوم المعالج بالتعامل معها فهي كالتالي بالترتيب
هذا في لغة السي فهل ينطبق نفس الترتيب على php
()
*
/
%
+
_
>
=>
<
=<
==
=!
=
بارك الله فيكم
درس في منتهى الروعة و البساطة
شرح سهل و مفهوم
ربي يوفقكم في إكمال الدورة بكل قوة
تحياتي لكم جميعا
أخوكم أزهر
بارك الله فيك يا استاذ عبدالملك
درس رائع ومبسط بإذن الله هيتم التطبيق وهقولك النتيجه
تحياتى ليك :)
تسلم على المعلومات القيمة …
لدي اقتراح ممكن يساعد الجميع وبالأخص محبي الووردبريس … يا ليت يتم ربط بعض من الشرح مع اكواد قوالب الووردبريس البرمجية .. لكي تكسب محبي الووردبريس إلى الدورة ..
شرح رائع ماشاءالله
يعطيك العافية بإنتظار الدرس القادم
شكراً اخي درس جيد ومفيد
ولله الحمد فاهم
يحياتي …..
السلام عليكم ورحمة الله وبركاته
مجهود ممتاز بارك الله فيكم وربنا يعينكم لانتهاء الدوره
بس يا ريت اخي توضحلنا مشكورا
1- عدد أجزاء الدوره
2- ميعاد صدور كل جزء
ومشكور ليكم جدا مباركين باذن الله
في حفظ الله
شكرا جزيلا لكم
بنتظار الدرس القادم
دمتم بخير
الله يعطيك العافية
وانت طبقت الحديث الشريف
( خيركم خير لأهله )
الله يجزاك خير ويكثر من امثالك
مرحبتين أخو م.عبدالله
لست متأكداً ولكن حسب ما اقوم بتنفيذه وحسب تجربتي له قبل قليل فهذا الترتيب الذي حصلت عليه
()
/
*
%
+
_
>
=>
< =< == =! = حيث حسب ما ظهر لدي بأن القسمة قد كانت قبل عملية الضرب, لكني لست متأكد سأقوم بإذن الله بالتأكد منها ولو كان هناك اي احد يمكنه افادتنا يسعدنا ذالك
شكراً للجميع على المرور الطيب
يعطيك العافية أخوي وبصراحة جهد رائع جدا
تواجهني مشكلة وهي أني لا أرى أي كود في هذا الدرس
بل يظهر كلامك سردا فما الذي بحصل؟ O_o
شكرا لك :)
مجهود كبير
جزاك الله خيرا
لكن اوجه مشكلة مثل الاخ وائل
لا ارى اي كود !
أنا عندي كل ما حضرتك تكون كاتب مثال بعد : لا يظهر عندي !! كأنه أبيض علي خلفية بيضاء !!!!
لهيك انا مش فاهم شئ من الدرس !!
سيتم معالجة المشكلة كما تم معالجتها في درس XHTML و CSS , المشكله من موفر عرض الأكواد للأسف, فتم الاستعانه بإضافه تعرض الأكواد بشكل مميز كما تم تعديله في درس XHTML و CSS
ارجوا الانتظار ليتم حلها وشكراً لكم :)
يا ليت لو تحطونه بملف بي دي اف عشان نستفيد
يعطيكم ألف عافية
ليه اخوي ما رديتم على مشاركتي واستفساري المشاركه رقم 15
مشكورين
متابع ،،
الله يعطيك العافية
الله يجزاك الجنة يا عبدالملك .. بإنتظار الدرس القادم
شكرا على الدرس
ممكن معرفة اوقات طرح الدروس
متابع جيد لكم…..
ما شاء الله عليكم
متابع مهكم الدروس
طرح جميل وسهل وسلس في نفس الوقت
جزآك الله خير أخوي عبدالملك عن كل حرف تكتبه ،
متآبع لكـ
من علمني حرفاً صرت له عبداً
دة تعليقي علي شرحك و السلام عليكم
مشكور اخى عبد الملك على الشرح المبسط والرائع
جزاك الله خيرا أخي الكريم………. دروس رائعة جداااااااااااا
ودائما زيدنا من عطائك …. زادك الله من عطائه وعلمه
عندي سؤال بسييط
لماذا لم نضع في البداية ?>
وفي النهاية <? كما في الدرس الاول
بل وضعنا في البداية <?php
و في النهاية ?>
مع اني جربت الطريقتين و طريقة الدرس الاول هي التي تعمل فقط
فما الفرق بينهما ام ان الطريقة الثانية مجرد خطا مطبعي
مع كامل شكري لك اخ عبدالملك
شكرا لك على الدرس الرائع
نحن لم ولن نكن عباد الا لله وحده
افضل من ان تقول من علمنى حرفا صرت له عبدا
ان تدعى له
شكرا أخي
شكرا جزيلا أخي .. مشكور على مجهوداتك الجبارة
وفقك الله لما تحبه و ترضاه
تابع إبداعاتك