一,变量可以直接传递函数

<?php
function demo($num , $n )//$n是个函数
{
	for($i=0;$i<$num;++$i)
	{
		if($n($i))
		{
			echo  $i."<br>";
		}
	}
}
function funcall($i)
{
	return $i%2==0;
}
demo(100,"funcall");

  

二, 使用call_user_func_array 

<?php
function demo($num , $n )
{
	for($i=0;$i<$num;++$i)
	{
		if(call_user_func_array($n,array($i)))
		{
			echo  $i."<br>";
		}
	}
}
function funcall($i)
{
	return $i%2==0;
}
demo(100,"funcall");

三,类中函数作为回调函数

(1)类成员函数

<?php
function demo($num , $n )//$n是个函数
{
	for($i=0;$i<$num;++$i)
	{
		if($n($i))
		//if(call_user_func_array($n,array($i)))
		{
			echo  $i."<br>";
		}
	}
}
function funcall($i)
{
	return $i%2==0;
}

class Filter
{
	function fun($i)
	{
		return $i%2==0;
	}

	static function sfun($i)
	{
		return $i%3 ==0;
	}
}
demo(100,array(new Filter(),"fun"));

  

(2)类静态函数

<?php
function demo($num , $n )//$n是个函数
{
	for($i=0;$i<$num;++$i)
	{
		if($n($i))
		//if(call_user_func_array($n,array($i)))
		{
			echo  $i."<br>";
		}
	}
}
function funcall($i)
{
	return $i%2==0;
}

class Filter
{
	function fun($i)
	{
		return $i%2==0;
	}

	static function sfun($i)
	{
		return $i%3 ==0;
	}
}
demo(100,array("Filter","sfun"));

  

  

php变量函数,回调函数的更多相关文章

  1. 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数

    [源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...

  2. 闭包函数&回调函数

    闭包函数&回调函数 谈到回调函数,不得不提匿名函数;匿名函数,也叫闭包函数,也就是没有名字的函数,它可以单独存在,也可以将其赋值给某一个变量.so,先来看一下闭包函数. 闭包函数 php文档: ...

  3. WPF如何获得变量异步回调函数时产生的异步回调

    有这样的问题,WPF当使用异步回调,需要使用产生的异步变量中的回调函数.数据库中查询诸如异步函数来获得一DataTable.怎样传递给回调函数呢? [方案一]使用全局变量 非常easy想到的是用全局变 ...

  4. node.js中的匿名函数, 回调函数和嵌套函数

    定义一个函数相信大家已经很熟悉了, 在javascript里的函数也是非常重要的, 使用率非常高, 有几种函数不是很好理解 一, 匿名函数 var remove = function(num1) { ...

  5. jquery 中的回调函数,回调函数(callback)是什么?

    知乎上果然大牛比较多 大神解释如下: 你到一个商店买东西,刚好你要的东西没有货,于是你在店员那里留下了你的电话,过了几天店里有货了,店员就打了你的电话,然后你接到电话后就到店里去取了货.在这个例子里, ...

  6. 函数&回调函数&匿名函数&自调函数

  7. javascript 函数初探 (四)--- 回调函数

    回调函数 既然函数与任何被赋值给变量的数据是相同的,那么她当然可以像其他数据那样被定义.删除.拷贝,以及当成参数传递给其它函数. 我们定义一个函数,这个函数有两个函数类型的参数,然后他会分别执行这两个 ...

  8. PHP中的回调函数和匿名函数

    html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...

  9. 理解和使用 JavaScript 中的回调函数

    理解和使用 JavaScript 中的回调函数 标签: 回调函数指针js 2014-11-25 01:20 11506人阅读 评论(4) 收藏 举报  分类: JavaScript(4)    目录( ...

  10. js回调函数(callback)理解

    Mark! js学习 不喜欢js,但是喜欢jquery,不解释. 自学jquery的时候,看到一英文词(Callback),顿时背部隐隐冒冷汗.迅速google之,发现原来中文翻译成回调.也就是回调函 ...

随机推荐

  1. swif tableview全选

    func selctAll() { idArr.removeAll() for var i = 0; i<sellingArr.count; i++ { let path: NSIndexPat ...

  2. 查看Linux内核版本命令

    一.查看Linux内核版本命令(两种方法): .cat /proc/version .uname -a 二.查看Linux系统版本的命令(3种方法): .lsb_release -a即可列出所有版本信 ...

  3. ReactiveCocoa常见操作方法介绍/MVVM架构思想

      1.ReactiveCocoa常见操作方法介绍. 1.1 ReactiveCocoa操作须知 所有的信号(RACSignal)都可以进行操作处理,因为所有操作方法都定义在RACStream.h中, ...

  4. 31、springmvc(注解)

    回顾什么是springmvc,它与spring有什么关系 springmvc属于spring框架的后续产品,用在基于MVC的表现层开发,类似于struts2框架 参见<<springmvc ...

  5. Linux和Windows下ping命令详解(转:http://linux.chinaitlab.com/command/829332.html)

    一.Linux下的ping参数 用途 发送一个回送信号请求给网络主机. 语法 ping [ -d] [ -D ] [ -n ] [ -q ] [ -r] [ -v] [ \ -R ] [ -a add ...

  6. [转载]win32 计时器使用

    在工业生产控制系统中,有许多需要定时完成的操作,如定时显示当前时间,定时刷新屏幕上的进度条,上位机定时向下位机发送命令和传送数据等.特别是在对控制性能要求较高的实时控制系统和数据采集系统中,就更需要精 ...

  7. php中session机制的详解

    [补充]session_start()要放在php最前面,header()函数也要放在session_start()之后. [读了下面的文章转载的文章后自己的理解]: 1,通过phpinfo()函数可 ...

  8. JavaWeb学习总结_Servlet开发

    一. Servlet简介 二.Servlet的运行过程 Servlet程序是由Web服务器调用,web服务器收到客户端的Servlet访问请求后: WEB服务器首先检查是否已经装载并创建了该Servl ...

  9. docker-registry使用笔记

    在国内docker-hub是肯定用不了的,不解释:sweat:. 所以最好还是建一个私有的docker-registry,存储一些常用的images方便随时pull. 相关链接 github:http ...

  10. HTML5/CSS3hack

    以下兼容技术我只测试了IE8+ Media Query 媒体查询 <script src="respond.min.js"></script> respon ...