بسم الله الرحمن الرحيم
الدرس الاول: مقدمه ومفاهيم عن لغة بي اتش بي
عتبر لغة PHP من اقوى اللغات الحاليه واسرعها , وتعتبر المفضله عند كثير من المبرمجين لسهولتها وبساطه التعامل معها, في هذا الدرس سوف نتعلم المفاهيم الاساسيه عن هذه اللغه , ومظاهر قوتها وبعض توضيحات القاء الدروس لان هذا الدرس يعتبر البدايه والانطلاقه لنتعلم معاً
في هذا القسم سوف تتعلم لغة PHP بالكامل وسوف تشمل جميع ما تحتاجه لتعلم هذه اللغه, وسوف يكون تقسيم الدروس كالاتي
متطلبات قبل البدأ بتعلم لغة PHP :
- معرفة شبه تامه بلغة HTML
- الاخلاص في التعلم
- عدم التوقف بعد الانتهاء التعلم وانما البحث عن الجديد ومحاولة التطوير الدائم للمهارات
- توفر بعض مهارات اللغه الانجليزية وذلك لان بعض المصطلحات يصعب ترجمتها الى العربية , او معناها العربي لا يؤدي الغرض
نقاط توضيحيه عن دروس PHP :
- لماذا تتعلم معنا ؟
- ما مقدار الاستفاده من تعلم PHP معنا
- ماهي لغة PHP ؟
- قوة لغة PHP
لماذا تتعلم معنا ؟
سوف تتعلم من هذه الدروس كيفية عمل برامج PHP من ابسطها الى اعقدها , مرورا من تعريف المتغيرات الى انشاء الدوال والكائنات البرمجيه وربطها مع بعضها البعض. يجب ان تكون لديك خبره في لغة HTML وقمت ببعض البرمجه من قبل ولا يعني ان تكون خبيرا جدا او قمت ببرمجة مواقع او قواعد بيانات. اما اذا كنت مبتدأ سوف تفيدك الدروس ولكن تحتاج الى كثير من التركيز والتطبيق المتواصل ووقت اطول.
مقدار الاستفاده من تعلم PHP معنا
تعلمك معنا سوف يتيح لك بناء مواقع حقيقه وممتازه وسوف نحاول ان نقوم بتغطية جميع ما يتعلق بهذه اللغه. اذا استخدمت لغة HTML من قبل فمن المؤكد انك لاحظت عدم ديناميكية الصفحات ولكن مع PHP سوف تلاحظ الفرق, وبعد الانتهاء من الدروس بالكامل سوف نقوم بعمل تطبيقات حقيقه يتم تقريرها لاحقا.
ماهي لغة PHP ؟
PHP عباره عن لغة تسمى ( Server Side Scripting Language ) ونعني بذلك انها تترجم من جهة الخادم وليس من جهاز المستخدم. لنضرب مثالا واقعيا على ذلك , عند الدخول الى الدردشه يجب عليك ان تقوم بتحميل (( JAVA VM )) على جهازك لتتمكن من الدخول ولكن اذا قمت بزياره اي موقع يستخدم لغة PHP فلن يكون هناك حاجه لتنصيب او تحميل اي برامج مساعده. فما وراء الكواليس كله يحصل في الخادم (( Server )), صممت هذه اللغه خصيصا للمواقع. ومن ضمن صفحات HTML يمكنك ادراج لغة PHP بداخلها لكي تنفذ في كله مره قمت بزياره الصفحه.
بدأت لغة PHP بمجهود شخص واحد يسمى ( Rasmus Lerdorf ) في سنة 1994 ومرت بثلاث مراحل جذريه لنرى ماهي عليه الان, حتى انه في سنة 2002 كان عدد المواقع التي تستخدمها اكثر من 9000000 (( تسعة مليون )) موقع. PHP لغة برمجة متاحه للكل لتطويرها او العمل عليها وهذا ما يسمى ( Open Source ). قديما كان اختصار PHP هو ( Personal Home Page ) ولكن تغيرت الى الاسم الحالي ( Hypertext Processor ). النسخه الحاليه للغة PHP هي 5 وقد حصل بها تطور كبير وتغيرات جذريه كبيره واصبحت اقوى بكثير من ما هي عليه الان.
بدأت لغة PHP بمجهود شخص واحد يسمى ( Rasmus Lerdorf ) في سنة 1994 ومرت بثلاث مراحل جذريه لنرى ماهي عليه الان, حتى انه في سنة 2002 كان عدد المواقع التي تستخدمها اكثر من 9000000 (( تسعة مليون )) موقع. PHP لغة برمجة متاحه للكل لتطويرها او العمل عليها وهذا ما يسمى ( Open Source ). قديما كان اختصار PHP هو ( Personal Home Page ) ولكن تغيرت الى الاسم الحالي ( Hypertext Processor ). النسخه الحاليه للغة PHP هي 5 وقد حصل بها تطور كبير وتغيرات جذريه كبيره واصبحت اقوى بكثير من ما هي عليه الان.
( مثال 1 : لاحظ انك لا تحتاج الى مترجم PHP على جهازك الشخصي )
قوة لغة PHP :
سوف اقوم بذكر قوة لغة PHP على شكل نقاط وسوف نتكلم عن كل نقطه بالتفصيل
- الاداء العاليتعتبر اللغه جدا مميزه وفعاله , حتى مع دعمها بتقنيه ZEND اصبحت اقوى , بحيث يمكن ان تتحمل ملايين الاوامر في اليوم الواحد
- دعمها لعدد كبير من قواعد البياناتتدعم لغة PHP عدد كبير من قواعد البيانات منها MySQL و mSQL و Oracle و DBM و وغيرها الكثير
- الدوال الداخليه او ( Built-In Library )تحتوي اللغه على كثير من الدوال الجاهزه للاستخدام , ومسهله بطريقه كبيره , بحيث يمكن من سطرين برمجيين او ثلاث من انشاء صوره من غير استخدام اي برنامج تحرير رسومي
- القيمهاللغه مجانيه ولا يوجد اي مبلغ تقوم بدفعه لتحميلها ويمكنك تحميل اللغه من موقعها الرسمي http://www.php.net
- التعلمتعلم اللغه سهل وهو مبني على لغة PERL و C و JAVA فإذا انت تعرف احدها , فتأكد انك سوف تختصر كثير من الوقت للتعلم
الدرس الثاني: اول برنامج بلغة البي اتش بي
هل تذكر عندما قلنا ان لغة PHP تحتاج الى مترجم لكي يقوم بمعرفة ما يقوم به الكود في الدرس الاول ؟ في هذه النقطه سوف تعرف كيف يتم تنصيب مترجم PHP , ولكن لا يستطيع مترجم PHP العمل بمفرده , لانه يحتاج الى خادم شخصي يكون به المترجم ليظهر المعلومات الى المتصفح , ولهذا سوف نقوم بتركيب Apache وهو يعتبر من افضل الخوادم الشخصيه الموجوده
متطلبات قبل البدأ :- تحميل لغة PHP وخادم شخصي وقواعد بيانات MySQL
- تحميل محرر مناسب لكتابة البرامج بلغة PHP
اهداف الدرس:- تنصيب لغة PHP وسيرفر Apache و قواعد بيانات MySQL
- أختيار محرر مناسب للكتابه
- كتابة اول برنامج PHP
- وسوم الكتابه في PHP
- الطباعه للمتصفح في PHP
- دمج PHP مع HTML
- التعليقات
تنصيب لغة PHP و الخادم الشخصي Apache و قاعدة البيانات MySQL:هل تذكر عندما قلنا ان لغة PHP تحتاج الى مترجم لكي يقوم بمعرفة ما يقوم به الكود في الدرس الاول ؟ في هذه النقطه سوف تعرف كيف يتم تنصيب مترجم PHP , ولكن لا يستطيع مترجم PHPالعمل بمفرده , لانه يحتاج الى خادم شخصي يكون به المترجم ليظهر المعلومات الى المتصفح , ولهذا سوف نقوم بتركيب Apache وهو يعتبر من افضل الخوادم الشخصيه الموجوده , لكي تقوم بإنهاء عناء تركيب هذه البرامج قامت مجموعه Appserv Network بعمل برنامج يقوم بتنصيب PHP و Apache و MySQL معاً , وحجم الملف صغير جدا مقارنة بتحميل كل برنامج على حده, لكن شرح تركيب هذا البرنامج هنا خارج عن نطاق موضوعنا ولذلك سوف تجد في مكتبة البرامج وصلة تحميل برنامج appserv و ايضا سوف تجد شرح خارجي لطريقة تركيب برنامج Appserv .اختيار محرر مناسب لكتابة اكواد PHP :يوجد كثير من البرامج لكتابة اكواد PHP ولكن لا اتحيز الى واحد منهم بشكل معين , انت كمبتدئ تحتاج الى ان تكتب الكود البرمجي بإستخدام احد هذه البرامج لانها تساعد على تتبع الاخطاء وترتيب الكود البرمجي وتلوينه , وهذا يساعد كثيرا في البرمجه , لمشاهدة هذه البرامج اذهب الى صفحة برامج تحرير لغة PHP .
أو إبحث بمكتة البرامج عن برنامج لتحرير الاكواد للغة php إضغط هنا .
كتابة اول برنامج PHP :هل انت مستعد ؟ هل قمت بتنصيب برنامج AppServ واخترت محرر كتابة الاكواد المناسب من مكتبة البرامج ؟ اذن لنقم بكتابة اول برنامج PHP . قم بفتح محرر الاكواد وابدأ بإنشاء صفحه جديد وقم بكتابة الكود التالي :
قم بحفظ البرنامج وقم بتسميته الى first.php في ملف www واذا كنت اخترت المكان الافتراضي لتنصيب AppServ سوف يكون مكان وضع الملف هنا C:/AppServ/www بعد ذلك اذهب الى متصفحك واكتب التالي http://localhost/first.php وسوف تشاهد التالي :
مبارك لك , لقد قمت بكتابة اول برنامج PHP واصبح اسمك مبتدئ PHP او مبرمج مبتدئ للغة PHPوسوم الكتابه في لغة PHP :هناك كثير من وسوم الكتابه في لغة PHP , ونعني بوسوم الكتابه المكان الذي يكون يبدأ معه كتابة الكود والمكان الذي ينتهي معه , انظر الى الصوره الاولى في الاعلى وسوف تجد ان وسم بداية الكتابه هو
ونهاية الكتابه هو?>
هل عرفت الان معنى وسوم الكتابه ؟تلميح : (( وسوم = tags ))وسم النهاية وسم البداية نمط الكتابه ?> النمط الافتراضي ?> النمط القصير نمط Script فهمت النقطه الى الان ؟ اذن لنقم بتطبيق هذه الوسوم على برنامجنا الاول , لنرى كيف تعمل , ولكي تعرف ماهي افضل طريقه احببت في كتابة الوسوم :)
النمط الافتراضي :
النمط القصير :
نمط Script :
هل قمت بإختيار النمط المريح لك ؟ اذن انتهينا من الجزء الثاني من درس اليوم :) , هل انت مستعد و مندفع للمتابعه ؟ اذن سوف نبدأ النقطه ( الخامسه لهذا اليوم )
الطباعه للمتصفح في PHP:اعتقد انك قمت بالتركيز في الشرح بالاعلى وقلت لنفسك ( انا اعرف كيف اطبع للمتصفح ) , نعم انت تعرف , نفسها كلمة print() هي للطباعة في المتصفح , ولكن ما هي print() , هذه الداله داخليه فيPHP اي موجوده في المترجم وتستطيع استخدامها , نقوم في معظم الحالات بطباعة مخرجات الى المتصفح , قد تتسائل ماهو معنى كلمة داله ؟ اليس ذلك صحيح ؟ اذن داله تعني ( امر يقوم بفعل شي معرف مسبقا بداخله ) لم تعرف ما اعني ؟ لا تتعجل سوف تقوم بفهم هذا كله لاحقا وفي دروس متقدمه , ودائما المدخلات الى الدوال تكون بين الاقواس كما تشاهد في اول برنامج لك , في حالتنا بالاعلى قمنا بطباعة نص اليس ذلك صحيحا ؟ اذن يجب ان نضع النص بين علامتي التنصيص " نص معين " والا سوف يكون هناك خطأ , اذا ماذا لو اردنا ان نقوم بطباعة رقم ؟ الجواب هو ان نقوم بطباعته بدون علامتي التنصيص. ولا تنسى ان تقوم بإنهاء كل سطر في كودك البرمجي بعلامة ; ولا سوف يكون هناك خطأ , لمذا نحتاج هذه العلامه ؟ لكي نقول للمترجم ان هنا ينتهي طلب هذا الامر وقم بتنفيذه.دمج PHP مع HTML:الكود البرمجي الذي قمنا بكتابته في الاعلى , عباره عن PHP فقط ويسمونه باللغه الانقليزيه (( pure php )) == (( مجرد PHP )) ولكن لو اردنا ان نجعل معه بعض من اكواد ال HTML ؟ الجواب بسيط جدا , وهو ان نقوم بكتابة كود ال HTML قبل وبعد وسوم البدايه والنهايه في PHP , اليك مثال يوضح لك الصوره , لنقم بكتابة البرنامج بالاعلى بطريقه اخرى:لن اقوم بشرح كود ال HTML هنا , لاني اعتقد ان عندك خبره او معلومات سابقه عن HTML , اما اذا لم تعرف فالامر بسيط انظر الى مخرجات هذا الكود , ومخرجات الكود في المثال الاول (( بدون دمج مع لغة PHP )) وسوف تلاحظ الفرق. وتذكر انه يمكن اضافة العدد الذي تريد من هذه الاكواد , لا يوجد هناك عدد محدد , فقط اكمل الدرس هذا اليوم وقم بعمل صفحه خاصه بك بهذه الطريقه (( الدمج )) وسوف تشعر انك مبرمج حقيقي. هل انت مصر على معرفة معنى الكود ؟ اذن سوف اشرح لك بطريقه بسيطه , في هذا الكود لاحظ ان الجمله ظهرت بخط عريض وذلك لاستخدامنا لكودHTML الذي تلاحظه في المثال و ووضعنا بين هذا الكود سطر لغة PHP ليطبع الجمله , والناتج الجمله بخط عريض. هل تريد ان تعرف كيف يكتب هذا الكود بلغة HTML , اذن لاحظ التالي :اعتقد انه الان قد وضحت لك الصوره بالكامل :)التعليقات:عندما تكتب كود برمجي كبير , او اسطر برمجيه كثيره سوف تكون لك سهله في البدايه وسوف تعرف عمل هذا الكود , لكن اترك العمل على الكود لمدة سنه , وارجع له مره ثانيه لتقوم ببعض التعديلات وبعض الاصلاحات ؟ هل تعتقد انك سوف تتذكر جميع الاكواد ؟ , اذن هذه هي التعليقات , تعبير او شرح بسيط عن الاكواد التي قمت بعملها وبمعنى اخر (( هي اسطر كتابيه تقوم بشرح اكواد معنيه ولا يقوم المترجم بترجمتها )) لنأخذ بعض انواع التعليقات وبعض الامثله على التعليقات وكيف يتم استعمالها :- سطر واحد :// this is a commentاو# this is a comment
- عدة اسطر :/*
this a comment
i am learning php
i love it
*/
الدرس الثالث: المتغيرات , الثوابت و المعاملات
ما معنى متغير ؟ المتغير هو عباره عن مكان او محتوى تضع فيه قيمة , تخيل كأس يمكن ان يحتوي ماء او عصير اليس ذلك صحيحا ؟ نفس الشي ينطبق على المتغير هو مكان نحفظ به قيمة ( بيانات ) . اذن كيف نقوم بتعريف متغير ؟ وكيف نحدد قيم المتغير ؟! في لغة PHP نقوم بتعريف متغير عن طريق الرمز $ فمثلا لو قلنا اننا نريد ان نعرف متغيرا اسمه ( name ) ويحتوي على القيمه ( احمد ) فسوف نقوم بالتالي....متطلبات قبل البدأ :- مراجعة الدرس الاول : اول برنامج PHP
- اختيار محرر كتابة الاكواد المناسب
اهداف الدرس:- المتغيرات
- انواع البيانات
- الثوابت
- المعاملات
- ترتيب الاهميات
المتغيرات :
ما معنى متغير ؟ المتغير هو عباره عن مكان او محتوى تضع فيه قيمة , تخيل كأس يمكن ان يحتوي ماء او عصير اليس ذلك صحيحا ؟ نفس الشي ينطبق على المتغير هو مكان نحفظ به قيمة ( بيانات ) . اذن كيف نقوم بتعريف متغير ؟ وكيف نحدد قيم المتغير ؟! في لغة 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