بسم الله الرحمن الرحيم

الحمد لله والصلاة والسلام على سيدنا محمد وعلى آله وصحبه أجمعين وبعد.

المتغير arguments

هو عبارة عن متغير نوعه مصفوفة ويتم استخدامه بداخل الدوال فقط حيث يحتوي على عدد الباراميترات وقيمها والتي يتم تمريرها للدالة اثناء الإستدعاء وهي مفيدة جداً عندما تنشئ دالة ولا تستطيع تحديد عدد بارميتراتها أو لتقوم بصنع دالة تتعامل مع أي عدد من الباراميترات وللتوضيح أكثر لاحظ المثال التالي :

كود PHP:


function fname()
{
 var 
arguments.length;
 
alert(c);

الآن قمنا بعمل دالة بدون أي باراميترات وقمنا بعمل متغير اسمه c ليحتفظ بعدد الباراميترات التي يمررها المستخدم للدالة ومن ثم عرضها على شكل رسالة وعندها يمكننا استدعاء الدالة بأي عدد باراميترات نريده كالتالي :

كود PHP:


fname
(5);
fname(1,"welcome");
fname(77,3.22,50,"Hi"); 

عندها ستكون قيمة c في الإستدعاء الأول هي 1 وفي الإستدعاء الثاني هي 2 وفي الإستدعاء الثالث هي 4 وأما للحصول على قيمة الباراميتر نفسه فإننا نستطيع ذلك عن طريق تحديد رقم الباراميتر في المصفوفة arguments حيث أن البارميتر الأول تكون قيمته صفر وهكذا وللتوضيح أكثر لاحظ المثال التالي :



كود PHP:


function fname()
{
  var 
arguments[0]; 
  var 
arguments[1];
}

fname("welcome",10); 

عندها ستكون قيمة c هي welcome وقيمة b هي 10 ولكن يجب الإنتباه هنا إلى أننا يجب أن نختبر عدد البارميترات قبل أن نتعامل معها لكي نتأكد من عدد البارميترات التي تم تمريرها كالتالي :


كود PHP:


function fname()
{
 var 
c;
 var 
b;

 if(
arguments.length >= 2)
  {
    
arguments[0]; 
    
arguments[1];
   }
 }

fname("welcome",10); 

وبهذه الطريقة نضمن أن يكون الكود سليم لأنه في بعض الأحيان لن يتم تمرير أي باراميتر للدالة وعندها سيكون عدد الباميترات صفر ويسبب مشكلة للدالة وأحياناً ربما يتم تمرير باراميتر واحد مما يتسبب ايضاً في مشكلة للدالة التي بالأعلى ولكن مع وجود الشرط فإن المشكلة ستحل.