-->

Ads

404
نعتذر , لا نستطيع ايجاد الصفحة المطلوبة
  • العودة الى الصفحة الرئيسية
  • الجمعة، 24 فبراير 2017

    الدرس الثالث: المتغيرات , الثوابت و المعاملات

    الدرس الثالث: المتغيرات , الثوابت و المعاملات

    الدرس الثالث: المتغيرات , الثوابت و المعاملات

    متطلبات قبل البدء  :
    اهداف الدرس :
    • المتغيرات
    • انواع البيانات
    • الثوابت
    • المعاملات
    • ترتيب الاهميات
    • ما معنى متغير ؟ المتغير هو عباره عن مكان او محتوى تضع فيه قيمة , تخيل كأس يمكن ان يحتوي ماء او عصير اليس ذلك صحيحا ؟ نفس الشي ينطبق على المتغير هو مكان نحفظ به قيمة ( بيانات ) . اذن كيف نقوم بتعريف متغير ؟ وكيف نحدد قيم المتغير ؟! في لغة PHP نقوم بتعريف متغير عن طريق الرمز $ فمثلا لو قلنا اننا نريد ان نعرف متغيرا اسمه ( name ) ويحتوي على القيمه  ( احمد ) فسوف نقوم بالتالي:
      $name = “احمد”;
      لكن يجب عليك الانتباه بأن اسماء المتغيرات في لغة PHP لها حدود, نعني بذلك انه يوجد اسماء واحرف غير مسموحه لتعريف المتغيرات, لنقوم بتسهيل الامر سنذكر المسموح منها وهو   ( احرف ) و ( ارقام ) و ( _ ) فقط.
      مثال على الاحرف : (  $name ) , مثال على الارقام : ( $223 ) , مثال على _ : ( $_name ) , ارأيت سهولة ذلك ؟ولكن يفضل ان تكون الاسماء معبره لكي يسهل عليك كتابة البرنامج ويسهل على الغير فهم محتواه , فلو اردت ان تعرف متغير يحوي البريد الالكتروني فسوف يكون كالتالي ( $email ) او ( $user_email ) وليس من المنطقي ان يكون ( $2235 ) او ( $mobile ) على سبيل المثال. وتذكر ان يمكنك استخدام اي عدد من الحروف التي تريد , فهي ليست محدده
      لو اردنا ان نقوم بتعريف متغير به القيمه 1 ومتغير اخر به القيمه 2 ماذا سوف نفعل ؟ سوف نقوم بتعريف المتغير الاول ( $number1 = 1; ) والمتغير الثاني ( $number2 = 2; ) , ماذا لو اردنا طباعته الى المتصفح , بكل بساطه نقوم بعمل التالي: ( print $number1; ) و ( print $number2; ) , لم تقتنع ؟ لم توضح الصوره ؟ مللت من الكلام ؟ لنقم بتسخين ايدينا قليلا وقم بفتح محرر الاكواد اليك وقم بكتابة الكود التالي :
    • عند تنفيذ هذا الكود سوف يكون لدينا الناتج التالي :
    • اذن في المتغير number1 قمنا بوضع القيمه 1 وفي المتغير number2 قمنا بوضع القيمه 2  ( بإستخدام العلامه = ) وقمنا بطباعة المتغيرات, فرأينا محتوى المتغيرات. اذن كأننا قلنا ( print 1; ) اليس كذلك ؟ لاحظ هنا ان السطور البرمجيه تنفذ سطرا سطرا , نعني بذلك اننا سنقوم بتنفيذ السطر رقم 3 ثم نقوم بتنفيذ السطر رقم 4. لكن قد تتسائل , فقط نستطيع ان نقوم بوضع قيم ؟ هل يمكن ان نضع متغير في متغير ؟ نعم يمكن ذلك بهذه الطريقه ( $number2 = $number1; ) ارأيت السهوله والبساطه في الموضوع ؟ وسوف يقوم بطباعة الرقم 1 . قلنا قبل قليل ان التنفيذ يكون سطرا سطرا اليس كذلك ؟ لنرى مثالا على ذلك , اكتب في محرر الاكواد التالي :
    • قم بتجربة الملف ولاحظ الناتج , اذن لان الاوامر تنفذ سطرا سطرا لم يقم المترجم بطباعة القيمه 2 , لان اخر قيمة اسندت الى المتغير ( $number 2 ) هي قيمة المتغير ( $number1 ) , اعتقد  ان الامر قد اتضح الان , لا تنسى ان اسماء المتغيرات حساسه لحالة الاحرف فالمتغير ( $number ) لا يساوي المتغير ( $Number ) .


      انواع البيانات:

      هل لاحظت في الامثله السابقه اننا قمنا بطباعة ارقام ونصوص, اليس كذلك ؟ ولكن ماهي انواع البيانات التي تأخذها المتغيرات وانواعها ؟ لدينا عدة انواع من المتغيرات الا وهي : ( نصوص = string ) , ( ارقام = integer ) , ( ارقام عشريه =  Double ) , ( المتغير Boolean ) , ( مصفوفه = array ) , ( كائن = object ) , في بداية تعلمنا سوف نقوم بالتعرف على النصوص والارقم العشرية والمتغير Boolean , اما الاخري فسوف تكون في دروس متقدمه اخرى , لنأخذ امثله على هذه المتغيرات
    مثال
    الاسم
    “Mohammad”
    string
    123
    Integer
    1.23
    Double
    True / False
    Boolean
    لاحظ اننا عندما نريد طباعة نص يجب ان نقوم بوضعه بين علامتي التنصيص ” ” او ‘ ‘
    اي واحد منهما تقوم بإختياره , ولكن اذا بدأت بواحد منهم يجب ان ينتهي النص بنفسه فلا يصح ان نقول ( “mohammad’ ) ولكن الصحيح ( “mohammad” ) او ( ‘mohammad’ )
    وضحت الصوره ؟
    معلومه خارجيه : تسمى لغة PHP اللغه المسامحه ولذلك انك عند وضع القيمه داخل المتغير لا تحتاج ان تقوم بتحديد النوع , فإن المترجم يقوم بعرفة النوع من تلقاء نفسه , ماعليك فعله فقط ان تقوم بوضع علامة $ قبل اسم المتغير.
    تخيل انك تريد معرفة نوع قيمة موجوده في متغير , ماذا يجب عليك ان تفعل , امر بسيط جدا وهو ان تقوم بإستخدام الداله gettype($var); وسوف تقوم هذه الداله بطباعة نوع المتغير الموجود لديك , لنأخذ امثله على ذلك , افتح محرر الاكواد وقم بكتابة التالي
    وسوف يكون الناتج كما يلي :
    لاحظ ان المتغير $test نوعه NULL وذلك لاننا لم نقم بتعيين اي قيمه له , ومعنى
    NULL هو فراغ او لا شيء
    ماذا لو اردنا تغيير قيمة متغير من نوع الى اخر , من integer  الى string فمالذي نفعله ؟ نقوم بإستخدام الداله settype($var , new type ) لكي تقوم بالعمل المطلوب , لنأخذ مثالا لتوضيح الصوره
    والناتج هو :
    والبقية نفس المنوال , فقط قم بوضع المتغير , ثم ضع النوع المراد التحويل اليه
    هناك طريقة اخرى لتغيير نوع المتغير وتسمى ( Casting ) وهي بالطريقة التاليه :
    قم بكتابة الكود وسوف ترى ان النتيجه نفسها نتيجة عمل settype( $var , new type )  والاختلاف الوحيد ان طريقة ( Casting ) لا تقوم بتغيير نوع المتغير الاساسي او فعليا , ولكن تقوم بوضع نسخه من المتغير وتقوم بتغييرها الى النوع المراد , ولكن على عكس الاخرى فهي تقوم بتغير النوع فعليا
    هناك شي اخر وهو لو اردنا جمع متغيرين مع بعضهما البعض في سطر واحد , فسوف نقوم بإستخدام ( . ) , لم توضح الصوره وانا متأكد , لنأخذ مثال يبين لنا المعنى , افتح محرر الاكواد مجددا وقم بكتابة التالي :
    والناتج هو التالي:
    الثوابــــت:
    رأيت في السابق اننا نقوم بإنشاء متغيرات ونقوم بتغيير انواعها والكثير من الامور ولكن يوجد لدينا الثوابت , ماهي الثوابت ؟ من الاسم يمكنك ان تستنج انه متغير ثابت ولا يتغير ابدا مهما حصل , قد تتسائل لماذا نحتاج الى هذه النوع من المتغيرات , والاجابه هي , تخيل ان لدينا اسعار بعض من منتجاتنا , وهذه الاسعار ثابته ولا تتغير ؟ فسوف نقوم بوضعها في الثوابت بالطريقه التاليه define( ‘var’ , value ) هل وضحت الصوره ؟؟ لنأخذها بالعربيه define(‘اسم المتغير’ , القيمه ) , هل عرفت الان الطريقة ؟ لنقم ببعض الامثله
    ,تخيل انه لدينا مطعم ونبيع الببسي بثلاث انواع , صغير وقيمته ريال واحد , وسط وقيمته ريالان , كبير وقيمته 3 ريالات ,  قم بكتابة التالي ,
    والناتج هو التالي :
    الفرق بين المتغيرات والثوابت , هي انه عندما نريد ان نقوم بطباعة الثابت او استخدامه لا نقوم بوضع علامة $ في الثابت ابدا , وايضا من الاسماء الممنوع استخدامها في متغيرات
    لغة PHP الثوابت المعرفة في نفس اللغه , وهي ثابته ولا تتغير ولمشاهدتها قم بكتابة التالي في محرر الاكواد
    وقم بتشغيل الملف وشاهد النتيجه  . (( سوف تظهر لك صفحه يوجد بها اعدادات
    هذه اللغه , لا تهتم لها الان فقط انظر الى الثوابت Variables ))

    المعامــلات:
    لدينا  ثلاث انواع من المعاملات في لغة PHP وهي المعاملات الحسابيه ,
    معاملات المقارنه , المعاملات المنطقيه وسوف نتكلم عنها بالتفصيل

    المعاملات الحسابيه
    المعاملات الحسابيه الاعتياديه
    نتيجة المثال
    مثال
    الاسم
    المعامل
    2
    1+1
    جمع
    +
    0
    1-1
    طرح
    -
    6
    2*3
    ضرب
    *
    3
    6/2
    قسمه
    /
    1
    10%3
    باقي القسمه
    %
    معاملات حسابيه اخرى :
    تساوي
    مثال
    العمليه
    $x = $x + 5
    $x +=5
    +=
    $x = $x – 5
    $x -=5
    -=
    $x = $x * 5
    $x *= 5
    *=
    $x = $x / 5
    $x /= 5
    /=
    $x = $x % 5
    $x % = 5
    %=
    $x = $x + 1
    $x++
    ++
    $x = $x – 1
    $x–
    شيء مخيف اليس كذلك ؟ بالعكس انه سهل جدا , كأنك تقوم بتعلم الرياضيات للمرحله الاولى , لنقم بكتابة بعض الاكواد وسوف ترى كيفية سهولة الامر , افتح محر الاكواد ولنقم بعمل بعض من تمارين العمليات الحسابيه الاعتياديه :
    ارأيت سهولة الامر ؟ فقط عليك ان تقوم بذكر رموز العمليات وسوف يكون لديك الناتج , لنقم الان ببعض تمارين المعاملات الحسابيه الاخرى , قم بكتابة التالي :
    لاحظ اننا هنا قمنا بتغيير قمية محتوى المتغير الاساسية , وليس مؤقتا , قم بتجربة العمليات الاخرى , حتى ولو كانت هناك بعض الاخطاء , قم بالتكرار ومحاولة معرفة الخطأ وسوف تفهم جميع الاكواد السابقه.

    سوف نقوم الان بذكر معاملات المقارنه والمعاملات المنطقيه ولكن لن نقوم بعمل اي
    تمارين عليها , وذلك لانها سوف تستعمل في الدرس القادم

    معاملات المقارنـــــه :
    المعنى
    المعامل
    يساوي
    = =
    لا يساوي
    !=
    يساوي ومن نفس النوع
    = = =
    اكبر من
    >
    اكبر من ويساوي
    >=
    اصغر من
    <
    اصغر من ويساوي
    <=
    المعاملات المنطقية :
    النتيجه
    مثال
    يكون صحيح عند
    الاسم
    المعامل
    true
    true || false
    احد الطرفين صحيح
    او
    ||
    true
    true OR false
    احد الطرفين صحيح
    او
    OR
    false
    true && false
    كل الطرفين صحيحه
    و
    &&
    false
    true AND false
    كل الطرفين صحيحه
    و
    AND
    false
    true xor true
    احد الطرفين صحيح وليس الاثنان
    xor
    xor
    false
    !ture
    الطرف ليس صحيح
    لا
    !
    قد تتسائل لماذا يوجد لكل نوع اثنان من الاشكال ؟ والجواب سوف يكون في القسم التالي وهو ترتيب الاهميات

    ترتيب الاهميــــات:
    عند استخدام المعاملات يقوم المترجم بالقراء من اليمين الى اليسار في الحالات العاديه وعند استخدام معامل واحد , ولكن تخيل لدينا اكثر من معامل في سطر برمجي واحد ؟ هنا يقوم المترجم بالاختيار حسب الاهميه , لنأخذ مثال على ذلك , تخيل ان لديك العمليه التاليه :
    4 + 5 فماهو الناتج ؟؟؟ الناتج واضح وليس به اي غموض وهو 9
    ولكن تخيل لو لديك العمليه التاليه 4 + 5 * 2 ؟؟؟ فما هو ناتج العمليه الحسابيه ؟ الجواب هو 14 , لان المترجم قرأ عملية الضرب اولا ثم عملية الجمع , ويمكن ان تقوم بإجبار المترجم على قراء عملية الجمع اولا بإستخدام الاقواس , مثال : ( 4 + 5 ) * 2 وسوف يكون الناتج 18
    , في الجدول التالي سوف تقوم بمعرفة الاهميات وترتيبها وماهي المعاملات التي تنفذ
    قبل الاخرى ( من الاعلى الى الاسفل )
    المعامل
    ++ , — , (cast)
    / , * , %
    + , -
    < , <= , => , >
    = = , = = = , !=
    &&
    ||
    = , += , -= , /= , *= , %= , .=
    AND
    xor
    OR
    لا تتعجل بالحكم على ان اللغه صعبه , يمكن ان لا اكون قد وضحت فكرة الشرح بشكل جيد , او لم يكن القائي جيدا , ولكن اعدك في الدرس القادم انك سوف تعرف معنى هذه المتغيرات وكيفية
    استعاملها , ومع الدرس القادم , تبدأ به متعة لغة PHP


    اسئـــلة على الدرس :
    1. اي من اسماء المتغيرات التاليه غير مسموح في لغة PHP :
    $name
    $22name65
    $first name
    $last-name
    $______________ARCCN____________
    2.  ماهو ناتج العمليات التاليه :
    4+5+6*(2*4)
    2+9*8
    3. قم بإنشاء متغير من نوع ( integer ) وقم بتحويله الى كل الانواع التي مرت
    عليك , مره بإستخدام الداله settype ومره بإستخدام ( Casting ) ولاحظ الفرق بينهما

    الـــدرس الــقادم :
    سوف نقوم في الدرس القادم بالتعلم على الشروط في لغة PHP بالتفصيل ,انواعها وطريقة كتابتها , واستعمالها مع المعاملات المنطقيه و معاملات المقارنه .

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

    الكاتب : المبرمج المحترف

    ليست هناك تعليقات:

    إرسال تعليق

    جميع الحقوق محفوظة ل التكنولوجيا
    تصميم : Abdo Hegazy