php数据类型:
布尔(Boolean)、整型(Integer)、浮点型(Float)、字符串(String)、
数组(Array)、对象(object)、NULL(空值)、资源(resource)
传递资源作为参数:
$resource = fopen(app()->getRootPath()."/.env",'rw');//资源
$res = $this->func($resource);//把资源作为参数传递给函数
dd(gettype($res));//打印返回resource对象类型
传递函数作为参数调用:
public function func($param = null){
return $param ;
}
$param1 = 10;
$param2 = 20;
$param = function($param1 = 0) use($param2){
return $param1+$param2;
};
var_dump($this->func($param($param1)));
var_dump($this->func($param)($param1));
$param1 = 10;
$param2 = 20;
//定义变量值为函数调用
$param = function($param1 = 0) use($param2){
return $param1 + $param2;
};
函数作为值赋给变量打印结果
^ Closure($param1 = 0) {#231 ▼
class: "app\api\controller\v1\Index"
this: app\api\controller\v1\Index {#229 …}
use: {▼
$param2: 20
}
}
函数赋值并调用,把结果当做值赋给变量
$param1 = 10;
$param2 = 20;
$param = (function($param1 = 0) use($param2){
return $param1 + $param2;
})($param1);//定义函数并调用,结果作为值赋给变量$param
dd($param);//结果:30
函数当变量赋值调用
$param1 = 10;
$param2 = 20;
$param = function($param1 = 0) use($param2){
return $param1 + $param2;
};
dd($param(20));//结果:40
把函数作为值赋给变量(注意:函数赋值给变量分号';'勿忽略
)
$func = function($param1 = 0,$param2 = 0){
return $param1 + $param2;
};
dd($func(10,20));//结果:30
网友评论