المتغيرات بشكل عام [ مقدمه في php , جزء 8 ]
مرسل: 12 أكتوبر 2008, 21:50
يجب أن تكون قد إطلعت على الاجزاء السابقه ..
تكلمنا سابقا ببساطه عن المتغيرات ولم نركز عليها .. لكن الآن لنفهم شيئاً بسيطاً عنها ..
المتغيرات في php تبدأ بعلامة الدولار $ ويتبعها إسم المتغير , وإسم المتغير حساس لحالة الاحرف "case-sensitive" , بعضكم لن يعرف معنى هذه الكلمة , حتى أنا في البدايه لم أتقن الفكره إجمالاً , لكن سوف أخبرك الآن معناها ببساطه , حساس لحالة الأحرف الأنجليزيه أي أن الحرف a ليس هو نفسه A في المتغير فمثلاً :
لا يعني أبداً بأي حال من الأحوال :
فكلاهما متغير مختلف , فقط لتغير نوع الحرف "كبير كان او صغير" .. هذا الموضوع ببساطه !
اسم المتغير أي مابعد علامة الدولار $ يبتدي بـأي حرف او شرطه سفليه "_" يتبع ذلك أي عدد من الحروف او الأرقام.
هناك إسم واحد وهو "$this" لايمكنك إستخدامه .. لأنه محجوز .
لنأتي للفكره عموماً .. لنكتب مثالاً ..
المتغير هو حيّز يحمل قيمة معينه , يمكن تغييرها كل ما أردت ..
في المثال السابق المتغير $var يحمل قيمة هي "Bob" أما المتغير $Var فيحمل القيمة "Joe"
ماذا لو قمنا بطباعه المتغيرات :
سوف ينتج
ماذا لو قمنا بتجربة اول مثال مع تغيير بسيط جداً ..
سوف ينتج
المتغير , يوصف بأنه أيضا متغير , أي ان الاسم مطابق لوظيفته , فهو يحمل اخر قيمة تم إسنادها إليه (بعكس الثوابت, لاحقا نمر عليها) .. فالمتغير كان يحمل قيمة "Bob" و قمنا بتغييرها لـ "Joe" , إذن القيمة تغيرت واصبحت أخر قيمة تم إسنادها له !
نسيت أن أخبرك أن قيمة المتغير تكون نصوص أو أرقام و أشياء أخرى لاتشغل بالك بها الآن , المهم الآن هو أن المتغير يحمل قيمة وتتغير القيمة بتغييرنا لها كل ما أردنا ..
أيضا تستطيع أن تعطي قيمة متغير لمتغير أخر مثل :
وبالتالي كلاهما يحملان الآن نفس القيمه .
لنتأكد من صحة التالي :
الأول خاطئ لأنه لم يبدأ بحرف أو "_"
الثاني صحيح لأن بدأ بـ"_" ويحوي حروف وأرقام
الثالث أيضا صحيح لأن الحرف "ä" من حروف ASCII وهي حروف مسموحة بالأسماء ..
هناك ميزه في المتغيرات , لو كان لدي متغيران , وكلاهما أريد أن اجعل لهما قيمة واحده , وأن أغير كلاهما في نفس الوقت .. عندما أفعل هذا كل مره مع كل المتغيرين فهذا شي عادي , لكن لو كان هناك شي يوفر لي الوقت فلابأس , هناك ميزه إسمها "assign by reference" أي "وضع قيمة من مرجع" ترجمة ليست حرفيه , لكنها للفهم ... أي ببساطه جعل المتغيرين توأمين بكل شيء
المثال على الميزه :
السطر الأول يعني أن $foo يحمل قيمة "Bob"
السطر الثاني قلنا أن المتغير $bar له مرجع من المتغير $foo.
السطر الثالث غيرنا قيمة المتغير $bar وبالتالي سوف تتغير قيمة المتغير $foo
السطر الرابع والخامس قمنا بطباعه المتغيرين وسوف ينتج القيمة "joe" مرتين
أي أن مايحصل لأحد المتغيرين يحصل للآخر ..
لايهم أن كنت لم تفهم اخر ميزه , فهي غير مهمه.
تابع الأجزاء .. وركزّ وجرّب
التالي >>
<< السابق
____________
المصادر :
PHP: Variables - Manual
- ماهي php ؟
- مالذي أستطيع فعله مع php؟
- أريد أن أبدأ مع php ماذا احتاج؟
- صفحتك الأولى في php
- أشياء مفيده أخرى
- التعامل مع النماذج و المدخلات
- النماذج والمتغيرات الخارجيه
تكلمنا سابقا ببساطه عن المتغيرات ولم نركز عليها .. لكن الآن لنفهم شيئاً بسيطاً عنها ..
المتغيرات في php تبدأ بعلامة الدولار $ ويتبعها إسم المتغير , وإسم المتغير حساس لحالة الاحرف "case-sensitive" , بعضكم لن يعرف معنى هذه الكلمة , حتى أنا في البدايه لم أتقن الفكره إجمالاً , لكن سوف أخبرك الآن معناها ببساطه , حساس لحالة الأحرف الأنجليزيه أي أن الحرف a ليس هو نفسه A في المتغير فمثلاً :
كود: تحديد الكل
$ahmed
كود: تحديد الكل
$Ahmed
اسم المتغير أي مابعد علامة الدولار $ يبتدي بـأي حرف او شرطه سفليه "_" يتبع ذلك أي عدد من الحروف او الأرقام.
هناك إسم واحد وهو "$this" لايمكنك إستخدامه .. لأنه محجوز .
لنأتي للفكره عموماً .. لنكتب مثالاً ..
كود: تحديد الكل
<?php
$var = 'Bob';
$Var = 'Joe';
?>
المتغير هو حيّز يحمل قيمة معينه , يمكن تغييرها كل ما أردت ..
في المثال السابق المتغير $var يحمل قيمة هي "Bob" أما المتغير $Var فيحمل القيمة "Joe"
ماذا لو قمنا بطباعه المتغيرات :
كود: تحديد الكل
<?php
echo $var;
echo $Var;
?>
سوف ينتج
كود: تحديد الكل
BobJoe
كود: تحديد الكل
<?php
$var = 'Bob';
$var = 'Joe';
?>
كود: تحديد الكل
<?php
echo $var;
?>
سوف ينتج
كود: تحديد الكل
Joe
المتغير , يوصف بأنه أيضا متغير , أي ان الاسم مطابق لوظيفته , فهو يحمل اخر قيمة تم إسنادها إليه (بعكس الثوابت, لاحقا نمر عليها) .. فالمتغير كان يحمل قيمة "Bob" و قمنا بتغييرها لـ "Joe" , إذن القيمة تغيرت واصبحت أخر قيمة تم إسنادها له !
نسيت أن أخبرك أن قيمة المتغير تكون نصوص أو أرقام و أشياء أخرى لاتشغل بالك بها الآن , المهم الآن هو أن المتغير يحمل قيمة وتتغير القيمة بتغييرنا لها كل ما أردنا ..
أيضا تستطيع أن تعطي قيمة متغير لمتغير أخر مثل :
كود: تحديد الكل
<?php $var1 = $var2; ?>
لنتأكد من صحة التالي :
كود: تحديد الكل
$4site = 'not yet';
$_4site = 'not yet';
$täyte = 'mansikka';
الثاني صحيح لأن بدأ بـ"_" ويحوي حروف وأرقام
الثالث أيضا صحيح لأن الحرف "ä" من حروف ASCII وهي حروف مسموحة بالأسماء ..
هناك ميزه في المتغيرات , لو كان لدي متغيران , وكلاهما أريد أن اجعل لهما قيمة واحده , وأن أغير كلاهما في نفس الوقت .. عندما أفعل هذا كل مره مع كل المتغيرين فهذا شي عادي , لكن لو كان هناك شي يوفر لي الوقت فلابأس , هناك ميزه إسمها "assign by reference" أي "وضع قيمة من مرجع" ترجمة ليست حرفيه , لكنها للفهم ... أي ببساطه جعل المتغيرين توأمين بكل شيء
المثال على الميزه :
كود: تحديد الكل
$foo = 'Bob';
$bar = &$foo;
$bar ="joe";
echo $bar;
echo $foo;
السطر الأول يعني أن $foo يحمل قيمة "Bob"
السطر الثاني قلنا أن المتغير $bar له مرجع من المتغير $foo.
السطر الثالث غيرنا قيمة المتغير $bar وبالتالي سوف تتغير قيمة المتغير $foo
السطر الرابع والخامس قمنا بطباعه المتغيرين وسوف ينتج القيمة "joe" مرتين
أي أن مايحصل لأحد المتغيرين يحصل للآخر ..
لايهم أن كنت لم تفهم اخر ميزه , فهي غير مهمه.
تابع الأجزاء .. وركزّ وجرّب
التالي >>
<< السابق
____________
المصادر :
PHP: Variables - Manual