2010-10-04 10 views
8

उदाहरण के लिए, यहाँ एक त्वरित डमी समारोह है कि यह योग हो रहा है:मैं PHP में अपने कस्टम फ़ंक्शन में वैकल्पिक तर्क कैसे बना सकता हूं?

function dummy_func($optional) 
{ 
    if (!isset($optional) 
    { 
     $optional = "World!"; 
    } 
    $output = "Hello " . $optional; 
    return $output; 
} 

हालांकि, अगर मैं इस चलाने के लिए, मैं एक लापता तर्क के लिए एक E_WARNING मिलता है। मैं इसे कैसे सेट अप कर सकता हूं ताकि यह त्रुटि को ध्वजांकित न करे?

उत्तर

19

वैकल्पिक तर्कों को डिफ़ॉल्ट मान देने की आवश्यकता है।

function dummy_func($optional = "World!") 
{ 
    $output = "Hello " . $optional; 
    return $output; 
} 

पुस्तिका (विशेष रूप से Default argument values खंड) में Function arguments पर पृष्ठ देखें: इसके बजाय तर्क पर isset जाँच की, बस इसे मूल्य तुम्हारे पास करने के लिए करता है, तो नहीं दिया चाहते दे।

+0

धन्यवाद! यह पूरी तरह से काम किया। – Rob

7

आपको लगता है कि "World!" की $optional तर्क डिफ़ॉल्ट ले मूल्य बनाकर कर सकते हैं:

function dummy_func($optional="World!") 
{ 
    $output = "Hello " . $optional; 
    return $output; 
} 

अब फ़ंक्शन को कॉल जब अगर आप किसी भी तर्क प्रदान नहीं करते हैं, $optional डिफ़ॉल्ट मान ले जाएगा, लेकिन यदि आप एक से पारित तर्क, $optional मूल्य पारित करेगा।

उदाहरण:

echo dummy_func();  // makes use of default value...prints Hello World! 
echo dummy_func('foo!'); // makes use of argument passed...prints Hello foo! 
+0

मैं जानना चाहता हूं कि उसका डाउनवॉट क्यों किया गया था। मैंने इसे ऊपर उठाया, क्योंकि यह काम करता है और वास्तव में स्वीकार किए गए उत्तर के समान है, मैं बस दोनों को स्वीकार नहीं कर सका। – Rob

संबंधित मुद्दे

 संबंधित मुद्दे