ماهو الفرق بين Variables و Constants ؟
إستفسار في لغة PHP
هذا لا يخص PHP فقط، بل الكثير من لغات البرمجة، الأول من اسمه(Variable) هو قيمة بعنوان في الذاكرة متغيرة، ثابت في الاسم -مُتغير في القيمة- وفي PHP متغير في النوع أيضًا، أي عند تعريفك متغير باسم name يمكنك جعله اسمًا نصيًا، رقمًا، قيمة منطقية ..، يسمح بتغيير قيمته ونوعه بدون اسمه.
والثابت(Constant) هي قيمة في الذاكرة ثابتة النوع، الاسم والقيمة، وفي PHP يوجد طريقة أخرى غير المفتاح const لتعريف الثوابت وهي الوظيفة define، بالطبع وبسبب الترقيعات في هاته اللغة ستجد بعض الإختلافات التي جعلتهم يرقعون نوعين:
<?php
$name = "A name";
$name = strlen($name); // 6
$name = $name == 6; // true
const age = 32;
const age = true; // خطأ
const age = 12; // خطأ أيضًا
define("USER_AGE", 32); // ثابت آخر
عرض جيد لو كنت تخاطب متوسطا في اللغة..
لو دققت في سؤال الأخ لعرفت مستواه و بالتالي تعطيه ما يناسبه، فأنت كالطبيب تعطي كل مريض ما يلائمه و لو رمت غير ذلك لأفسدت أكثر مما أصلحت..
راجع طريقة w3schools في التعليم ستجدها من النجاعة بمكان، مما يجعلها المكان الأفضل لبداية تعلم البرمجة، بل هي لي شخصيا مرجع أساس أفزع إليه عند الحاجة..
وفقك الله لكل خير.
هو يسأل عن الفرق، لهذا توقعتُ أنه يعرف أن المتغيرات متغيرة والثوابت ثابتة! فهذا منطقي أصلًا!، ويسأل عن فروقات أخرى، عمومًا، ما قلته كان بسيطًا وسطحيًا جدًا، أجد بعض الكتب المتخصصة تشرح ذاك في عدة صفحات، التبسيط ليس دائمًا جيدًا، بل مضرٌ لو اعتمدتَ عليه طوال الوقت وW3School مثلًا تعرض لك الأمور السطحية ولا تعرض لك التفاصيل المملة التي تجدها في التوثيقات توثيقات مثل MDN والتوثيق الرسمي لـES إن نتحدث عن JavaScript، مما يجعلها تضر بالمبرمج يعرف بالكاد كيف يكتب ..
التعليقات