برمجة بي اتش بي php

الدرس الرابع في تعليم لغة php | المتغيرات وأنواع البيانات

مفهوم – سنتطرق في هذا الدرس إلى المتغيرات وأنواع البيانات في لغة 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 ) لا تقوم بتغيير نوع المتغير الاساسي او فعليا , ولكن تقوم بوضع نسخه من المتغير وتقوم بتغييرها الى النوع المراد , ولكن على عكس الاخرى فهي تقوم بتغير النوع فعليا

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


والناتج هو التالي:

بعد التدريب على ماورد من قبل المتابع سنتحدث في المحاضرة القادمة عن الثوابت والمعاملات الحسابية

اترك تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *