Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> PHP

PHP कॉलबैक/कॉलेबल (Callbacks/Callables) - परिभाषा और उपयोग


परिभाषा और उपयोग

कॉलबैक PHP में एक छद्म-प्रकार है। PHP 5.4 के साथ, कॉलेबल टाइप हिंट पेश किया गया है, जो कॉलबैक के समान है। जब किसी ऑब्जेक्ट को कॉलेबल के रूप में पहचाना जाता है, तो इसका मतलब है कि इसे एक फ़ंक्शन के रूप में उपयोग किया जा सकता है जिसे कॉल किया जा सकता है। एक कॉलेबल बिल्ट-इन या उपयोगकर्ता-परिभाषित फ़ंक्शन या किसी क्लास के अंदर एक विधि हो सकती है।

is_callable() फ़ंक्शन का उपयोग यह सत्यापित करने के लिए किया जा सकता है कि पहचानकर्ता कॉलेबल है या नहीं। PHP में call_user_func() होता है जो पैरामीटर के रूप में फ़ंक्शन का नाम स्वीकार करता है।

उदाहरण

उदाहरण 1: बिल्ट-इन फ़ंक्शन कॉलेबल है

<?php 
var_dump(is_callable("abs")); 
?>

आउटपुट

bool(true)

उदाहरण 2: उपयोगकर्ता-परिभाषित फ़ंक्शन कॉलेबल है

<?php 
function myfunction() { 
    echo "Hello World"; 
} 
echo is_callable("myfunction") . "\n"; 
call_user_func("myfunction"); 
?>

आउटपुट

1 
Hello World

उदाहरण 3: ऑब्जेक्ट विधि को कॉलेबल के रूप में पास करना

ऑब्जेक्ट विधि को कॉलेबल के रूप में पास करने के लिए, ऑब्जेक्ट और उसकी विधि को एक सरणी में दो तत्वों के रूप में पास किया जाता है:

<?php 
class myclass { 
    function mymethod() { 
        echo "This is a callable\n"; 
    } 
} 
$obj = new myclass(); 
call_user_func(array($obj, "mymethod")); // सरणी लिटरल रूप में पास की गई
call_user_func([$obj, "mymethod"]); // छोटा सरणी सिंटैक्स
?>

आउटपुट

This is a callable 
This is a callable

उदाहरण 4: स्टैटिक विधि को कॉलेबल के रूप में पास करना

किसी क्लास की स्टैटिक विधि को भी कॉलेबल के रूप में पास किया जा सकता है। ऑब्जेक्ट के बजाय, क्लास का नाम सरणी पैरामीटर में पहला तत्व होना चाहिए:

<?php 
class myclass { 
    static function mymethod() { 
        echo "This is a callable\n"; 
    } 
} 
$obj = new myclass(); 
call_user_func(array("myclass", "mymethod")); 
// स्कोप रिज़ॉल्यूशन ऑपरेटर का उपयोग
call_user_func("myclass::mymethod"); 
?>

आउटपुट

This is a callable 
This is a callable
  1. - PHP log10() फ़ंक्शन - आधार-10 लघुगणक

    PHP का log10() फ़ंक्शन किसी संख्या का **आधार-10 लघुगणक (base-10 logarithm)** गणना करता है। इसे सामान्य या मानक लघुगणक भी कहते हैं। सिंटैक्स log10(float $arg): float पैरामीटर पैरामीटरविवरण $argवह संख्या जिसका आधार-10 लघुगणक चाहिए लौटाया गया मान $arg का आधार-10 लघुगणक (फ्लोट)। गणितीय संबंध l

  1. - PHP log() फ़ंक्शन - प्राकृतिक लघुगणक और मनमाना आधार

    PHP का log() फ़ंक्शन **प्राकृतिक लघुगणक (natural logarithm, आधार e)** या **निर्दिष्ट आधार** में लघुगणक गणना करता है। डिफ़ॉल्ट आधार यूलर संख्या M_E (≈2.718) है। सिंटैक्स log(float $arg, float $base = M_E): float पैरामीटर्स पैरामीटरविवरण $argवह मान जिसका लघुगणक चाहिए $baseआधार (डिफ़ॉल्ट M_E = प्

  1. - PHP lcg_value() फ़ंक्शन - रैखिक सर्वांगसम जनरेटर (0 से 1)

    PHP का lcg_value() फ़ंक्शन **0 और 1 के बीच स्यूडो-रैंडम फ्लोट** जनरेट करता है। LCG = **रैखिक सर्वांगसम जनरेटर (Linear Congruential Generator)** — सबसे पुराने स्यूडो-रैंडम एल्गोरिदम में से एक। सिंटैक्स lcg_value(): float पैरामीटर्स कोई पैरामीटर नहीं। लौटाया गया मान 0.0 और 1.0 (सम्मिलित) के बीच स्य