第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

php 在調(diào)用一個函數(shù)給該函數(shù)傳參時傳一個匿名函數(shù)如何讓其運行并且得到其返回的結(jié)果,再將其結(jié)果作為傳參傳過去?

php 在調(diào)用一個函數(shù)給該函數(shù)傳參時傳一個匿名函數(shù)如何讓其運行并且得到其返回的結(jié)果,再將其結(jié)果作為傳參傳過去?

PHP
紅顏莎娜 2019-03-15 03:52:11
今天突發(fā)奇想到一個問題,然后研究了一晚上,看了一晚上的文檔;最后都無果;我就想問一下,如何在調(diào)用一個函數(shù)給該函數(shù)傳參時傳一個匿名函數(shù)并運行得到其返回的結(jié)果,再將其結(jié)果作為傳參傳過去; # ->true->callback()->end; #我實現(xiàn)的代碼是: FUNC(callback)->is_func # ->false->end; #我想法中要的執(zhí)行順序是: FUNC(callback)->callback()->FUNC(resutl)->end; 下面是隨意寫的一段代碼,大概意思就是就是在傳參時進行運算; $c = 2; function sum($num){ var_dump($num); } sum(function()use($c){ $c = $c * $c; return $c; }); #上面的代碼打印出來的是function,我想要的效果是運行這個函數(shù); #還是只有判斷一下然后執(zhí)行才有效; $c = 2; function sum($num){ if(is_callable($num)) $num = $num(); var_dump($num); } sum(function()use($c){ $c = $c * $c; return $c; }); #上面種方式是可以的; #但我想要能直接在傳參時運行該函數(shù); #請問有其他但方法嗎?; 有這種操作嗎?;還是根本不可行;麻煩各位大大教教小弟;
查看完整描述

3 回答

?
元芳怎么了

TA貢獻1798條經(jīng)驗 獲得超7個贊

我想要的大概是這種效果,原生有這種操作嗎?

$num = 3;

function print($param){
    var_dump($param);
}

function callFunc($main,$callback){
    $param = $callback();
    $main($param);
}

callFunc('print',function()use($num){
   return $num;
});

而且要是能做到像上面問題那樣就更好了;


$num = 1;

function a($param){
    var_dump($param);
}

a(function()use($num){
   return $num+$num; 
});

# 打印出來的是function本身,這沒有問題,有什么方法能讓其打印出來的是2;
查看完整回答
反對 回復 2019-03-18
?
侃侃無極

TA貢獻2051條經(jīng)驗 獲得超10個贊

function sum($func,$c){
    if(is_callable($func))
        $num = $func($c);
    var_dump($num);
}

sum(function($c){
    return $c * $c;
}, 2);
查看完整回答
反對 回復 2019-03-18
?
慕桂英3389331

TA貢獻2036條經(jīng)驗 獲得超8個贊

你打印出來的是一個閉包的closure對象,因為你還沒用使用這個閉包對象,所以你即使寫了但是他還是沒有返回值。稍微改動下代碼這么寫 拿你這段代碼為例
https://img1.sycdn.imooc.com//5c8f594d00018bf007600247.jpg
只需要再a中使用一下閉包函數(shù)就會得到你想要的結(jié)果,var_dump($param());就是這樣寫就ok了。因為1.本身閉包函數(shù)就是通過closure對象來實現(xiàn)的2。閉包函數(shù)他還是一個函數(shù),需要使用才能得到他的返回值。

查看完整回答
反對 回復 2019-03-18
  • 3 回答
  • 0 關(guān)注
  • 413 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號