المتغيرات
بسم الله الرحمن الرحيم والصلاة والسلام على اشرف الانبياء والمرسلين ، بعد المقدمات السابقة والهامة في معرفة اساسيات اللغة يمكننا بداية كتابة البرامج بلغة البي اتش بي ، وبطبيعة الحال سنبدأ من اصغر الاساسيات واهمها في كتابة البرامج عموماً وهي المتغيرات .
المتغيرات في لغة الـ PHP تبدأ بعلامة الدولار ( $ ) ، ولاسناد قيمة لذلك المتغير نستخدم علامة المساواة ( = ) ، فرضا لدينا المتغير ( Name ) والقيمة ( Khaled ) فنكتب ما يلي :
<TABLE dir=ltr cellSpacing=0 cellPadding=0 width="82%" align=center><TBODY><TR><TD><SMALL>Code ..</SMALL></TD></TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR><TR class=code><TD style="WHITE-SPACE: nowrap" noWrap><CODE>
<?
$Name = "joker";
?>
</CODE>
</TD>
</TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR></TBODY></TABLE>
هذا في حالة المتغيرات النصية ( Text ) ، وفي حالة المتغيرات الرقمية ( Numbers ) يمكن تعريف متغير ( Counter ) الذي يحمل القيمة ( 17 ) كالتالي :
<TABLE dir=ltr cellSpacing=0 cellPadding=0 width="82%" align=center><TBODY><TR><TD><SMALL>Code ..</SMALL></TD></TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR><TR class=code><TD style="WHITE-SPACE: nowrap" noWrap><CODE>
<?
$Counter = 17;
?>
</CODE>
</TD>
</TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR></TBODY></TABLE>
الفرق الواضح في طريقة تعريف المتغيرين النصي والرقمي هو عدم وجود علامات التنصيص في تعريف المتغيرات الرقمية بينما يجب وضع علامات التنصيص في تعريف المتغيرات النصية .
نقاط هامة في تسمية المتغيرات :
- اسماء المتغيرات في كثير من لغات البرمجة لا تتعدى 255 حرف ( المقصود بها الخانات سواء كانت حروف أو ارقـام أو علامات اخرى ) ، و في لغة الـ PHP لا يوجد حدود على عدد الخانات في تسمية المتغيرات ، ولكن في الغالب لن تحتاج الى اكثر من 15 خانة لتسمية أي متغير ، لان المبالغة في تسمية المتغيرات تسبب مشاكل في تذكر المتغيرات وما تحتوية من قيم .
- بداية كل متغير يجب أن تبدأ بحرف ( يعني حرف هجائي ) أو علامة ( _ ) Underscore ، مع تجاهل علامة الـ $ لانها لا تحسب من اسم المتغير .
- يمكن أن يحتوي اسم المتغير على الحروف أو الارقام أو علامة ( _ ) فقط ، اما العلامات الأخرى مثل ( + , - , * , / ) أو الـ & لا يمكن كتابتها في اسم المتغير .
- المتغير ( Name$ ) يختلف عن المتغير ( name$ ) لاختلاف حالة حرف الـ N ، ولذلك يجب التاكد من اسم المتغيرات بدقة لتجنب حدوث مشاكل في الوصول الى متغير معين ، وبالتاكيد لو كان لديك اسلوب خاص في تسمية المتغيرات لسهولة الوصول اليها وتذكرها ستكون كتابة السكربات اسهل بكثير .
- يستحسن أن تكون اسماء المتغيرات دالة على معانيها ، بمعنى أنه لمتغير مثل عداد الزوار يستحسن أن يكون ( counter$ ) ، ولمتغير مثل اسم المستخدم ( user$ ) .. الخ .
-------------------------
التعامل مع المتغيرات
التعامل مع المتغيرات :
فائدة المتغيرات تكمن في طريقة استخدامها في كتابة السكربت ، وكما ذكرنا سابقاً أنه لطباعة متغير معين نستخدم امر الطباعة ( echo ) أو ( print ) كما يلي :
<TABLE dir=ltr cellSpacing=0 cellPadding=0 width="82%" align=center><TBODY><TR><TD><SMALL>Code ..</SMALL></TD></TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR><TR class=code><TD style="WHITE-SPACE: nowrap" noWrap><CODE>
<?
$name = "joker";
echo $name;
?>
</CODE>
</TD>
</TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR></TBODY></TABLE>
في البداية سيتم اسناد القيمة ( Naser ) الى المتغير ( name$ ) ، وفي السطر الثاني يتم طباعة المتغير ، أو بالاحرى القيمة المسندة الى المتغير .
انواع البيانات ( Data Types ) :
في الامثلة السابقة قمنا باسناد قيمتين عددية ونصية الى متغيرين ، وبينًا الفرق بينهما ، وفي لغة الـ PHP بشكل عام يوجد أكثر من هذين النوعين من البيانات ، ساشرح بعضاً منها الآن ، والبقية في الدروس القادمة :
- البيانات النصية ( String ) .
- البيانات العددية الصحيحة ( Integer ) .
- البيانات العددية الكسرية ( Double ) .
- المصفوفـات ( Array ) .
- الكـائنات ( Object ) .
- البيانات الغير معروفة ! .
-------------------------------
البيانات النصية ( String )
البيانات النصية ( String ) :
هي البيانات التي تكون بين علامات التنصيص " " بغض النظر عن محتوهـا ، فيمكن أن تكون حروف أو اعداد أو رموز أو غيرها ، ومثال ذلك كما ذكرنا سابقاً :
<TABLE dir=ltr cellSpacing=0 cellPadding=0 width="82%" align=center><TBODY><TR><TD><SMALL>Code ..</SMALL></TD></TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR><TR class=code><TD style="WHITE-SPACE: nowrap" noWrap><CODE>
<?
$user = "joker";
$age = "13.5";
?>
</CODE>
</TD>
</TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR></TBODY></TABLE>
التعامل مع البيانات النصية ( String ) :
لاضـافة المتغيرات التي تحتوي على بيانات نصية مع متغيرات من نفس النوع نحتاج الى عملية دمج بين المتغيرات ، ولعمل ذلك نكتب :
<TABLE dir=ltr cellSpacing=0 cellPadding=0 width="82%" align=center><TBODY><TR><TD><SMALL>Code ..</SMALL></TD></TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR><TR class=code><TD style="WHITE-SPACE: nowrap" noWrap><CODE>
<?
$total = $user . $age;
?>
</CODE>
</TD>
</TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR></TBODY></TABLE>
في هذه الحالة سيتم اسناد القيمة Khaled13.5 الى المتغير ( total$ ) .
اذا اردنا وضع مسـافة بين المتغيرين نضيف متغير جديد يحتوي على المسـافة وهو ( space$ ) ثم نقوم بعملية الدمج كالتالي :
<TABLE dir=ltr cellSpacing=0 cellPadding=0 width="82%" align=center><TBODY><TR><TD><SMALL>Code ..</SMALL></TD></TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR><TR class=code><TD style="WHITE-SPACE: nowrap" noWrap><CODE>
<?
$space = " ";
$total = $user . $space . $age;
?>
</CODE>
</TD>
</TR><TR bgColor=#aca998 height=1><TD height=1>
</TD></TR></TBODY></TABLE>
وفي هذه الحالة سيتم وضع القيمة Khaled 13.5 في المتغير ( total$ ) ، وبطبيعة الحال يمكن استخدم المتغيرات النصية داخل متغيرات نصية أخرى ، حيث سيتم تعويض المتغير بقيمتة الأصلية .
----------------------------------