پارامترهای اختیاری

پارامترهای اختیاری همانگونه که از اسمشان پیداست اختیاری هستند و می‌توان به آنها آرگومان ارسال کرد یا نه. این پارامترها دارای مقادیر پیشفرضی هستند. اگر به اینگونه پارامترها آرگومانی ارسال نشود از مقادیر پیشفرض استفاده می‌کنند. به مثال زیر توجه کنید :

   1: <?php
   2: 
   3:     function PrintMessage($String = "Welcome to PHP Tutorials!")
   4:     {
   5:         echo $String . '<br/>';
   6:     }
   7: 
   8:     PrintMessage();
   9:     PrintMessage("Learn PHP Today!");
  10: 
  11: ?>
Welcome to PHP Tutorials!
Learn PHP Today!

متد PrintMessage() (خطوط 6-3) یک پارامتر اختیاری دارد. برای تعریف یک پارامتر اختیاری می‌توان به آسانی و با استفاده از علامت = یک مقدار را به یک پارامتر اختصاص داد (مثال بالا خط 3). دو بار متد را فراخوانی می‌کنیم. در اولین فراخوانی (خط 8) ما آرگومانی به متد ارسال نمی‌کنیم بنابراین متد از مقدار پیشفرض (Welcome to PHP Tutorials!) استفاده می‌کند. در دومین فراخوانی (خط 9) یک پیغام (آرگومان) به متد ارسال می‌کنیم که جایگزین مقدار پیشفرض پارامتر می‌شود.