前端PHP入门-012-回调函数[慎入]

尽力而为,对于WEB前端和美工同学,比较难了!但是你们都学过JS的闭包等操作,那么这里也一定没有问题!

回调函数,可以配合匿名函数和变量函数实现更加优美、复杂的一种函数结构。

回调函数,就是在处理一个功能的时候,我让让这个功能自定义能力再强一些,我准许调用这个函数的时候,还可以传入一个函数配合、协助进行处理。

这是 变量函数[忘记赶快回看]回调函数 结合的一个章节。

这块理解了,我想对JS也是一个提高!

  1. <?php
  2. function woziji($one,$two,$func){
  3. //我规定:检查$func是否是函数,如果不是函数停止执行本段代码,返回false
  4. if(!is_callable($func)){
  5. return false;
  6. }
  7. //我把$one、$two相加,再把$one和$two传入$func这个函数中处理一次
  8. //$func是一个变量函数,参见变量函数这一章
  9. echo $one + $two + $func($one,$two);
  10. }
  11. //我们定义几个函数试试
  12. function plusx2( $foo , $bar){
  13. $result = ($foo+$bar)*2;
  14. return $result;
  15. }
  16. function jian( $x , $y ){
  17. $result = $x - $y;
  18. return $result;
  19. }
  20. //调用一下函数,woziji,向里面传入参数试试
  21. echo woziji(20,10,‘plusx2‘);
  22. //将plusx2改成jian试试结果
  23. echo woziji(20,10,‘jian‘);
  24. ?>

处理过程是这样的:

  • 将20赋值给形参one,10赋值给了" role="presentation" style="position: relative;">one,10赋值给了one,10赋值给了two,而plusx2或者jian这两个变量函数,赋值给了$func
  • 在woziji这个函数中判断plusx2或者jian是否为函数,不是函数就return false 停止执行了
  • 显示plusx2或者jian是函数。因此one=20," role="presentation" style="position: relative;">one=20,one=20,two =10相加了,相加后,one和" role="presentation" style="position: relative;">one和one和two又带入到了了func(" role="presentation" style="position: relative;">func(func(one,$two)中。
  • 带入至里面后而func,是可变的,可以为plusx2或者jian。如果为plusx2的话," role="presentation" style="position: relative;">func,是可变的,可以为plusx2或者jian。如果为plusx2的话,func,是可变的,可以为plusx2或者jian。如果为plusx2的话,one = 20,two=10的这个两个结果又给了plusx2函数里面的" role="presentation" style="position: relative;">two=10的这个两个结果又给了plusx2函数里面的two=10的这个两个结果又给了plusx2函数里面的foo和$bar
  • foo+" role="presentation" style="position: relative;">foo+foo+bar 乘以2后将结果返回至woziji这个函数功能体的运算处:one+" role="presentation" style="position: relative;">one+one+two + func(" role="presentation" style="position: relative;">func(func(one,$two);
  • 这样主得到了运算结果

回调函数:在一个调数里面,再传入一个函数名,将函数名加上()括号。识为变量函数,配合执行。

来自为知笔记(Wiz)

时间: 2024-08-08 09:28:25

前端PHP入门-012-回调函数[慎入]的相关文章

前端PHP入门-009-匿名函数

想想JavaScript当中是否有这个概念? 所谓匿名,就是没有名字. 匿名函数,也就是没有函数名的函数. 匿名函数的第一种用法,直接把赋数赋值给变量,调用变量即为调用函数. 匿名函数的写法比较灵活. 1.变量函数式的匿名函数 <?php $greet = function($name){ echo $name.',你好'; }; $greet('明天'); $greet('胖先生'); ?> 函数体没有函数名,通过$greent 加上括号 来调用的,这就是匿名函数. 2.回调式的匿名函数 我

前端PHP入门-015-递归函数-飘过

提要: 如果感觉吃力,web前端的各位同学,可以弃之. 递归函数,递归只是一个名字,而递归函数的规定: 函数体内调用函数自己 . 我们来计算 10!=10*9*8*7*6*5*4*3*2*1 web前段各位可以飘过 <?php //10的阶乘 function demo($a) { if($a>1) { $x=$a*demo($a-1); } else { $x=$a; } return $x; } echo demo(10); ?> 来自为知笔记(Wiz)

前端PHP入门-008-自定义函数

大家已经是有编程经验的WEB前端,那么对于函数已经很熟悉了,PHP当中定义函数跟你们学习的JavaScript一样 想想有哪些函数类型? 我们在实际开发过程当中需要有很多功能都需要反复使用到,而这些反复需要使用到的功能,我们能定义成 功能(函数) ,就尽可能定义成功能(函数).使用的时候, 吼一下 它的名字即可. 语法 那我们来学一下自定义函数的语法规定,语法规定如下: function 函数名([参数名1[=值1], 参数名2[=值2], 参数名n[=值n]]) { 函数中的功能体 [retu

前端PHP入门-019-内置函数之数学函数-很重要

查看帮助文档为主 函数名 描述 实例 输入 输出 abs() 求绝对值 $abs = abs(-4.2); //4.2 数字 绝对值数字 ceil() 进一法取整 echo ceil(9.999); // 10 浮点数 进一取整 floor() 舍去法取整 echo floor(9.999); // 9 浮点数 直接舍去小数部分 fmod() 浮点数取余 "x=5.7;" role="presentation" style="position: relat

前端PHP入门-018-内置函数之文件包含函数

在实际开发中,常常需要把程序中的公用代码放到一个文件中,使用这些代码的文件只需要包含这个文件即可.这种方法有助于提高代码的重用性,给代码的编写与维护带来很大的便利. 在PHP中, 有require.require_once.include.include- once四种方法包含一个文件. 函数 包含失败 特点 inlcude 返回一条警告 文件继续向下执行.通常用于动态包含 require 一个致命的错 代码就不会继续向下执行.通常包含极为重要的文件,整个代码甭想执行 include_once

前端PHP入门-010-内部函数

内部函数,是指在函数内部又声明了一个函数. 注意事项: 内部函数名,不能是已存在的函数名 假设在函数a里面定义了一个内部函数,不能调用两次函数a. <?php function foo() { echo '我是函数foo哟,调一下我才会执行定义函数bar的过程<br />'; function bar(){ echo '在foo函数内部有个函数叫bar函数<br />'; } } //现在还不能调用bar()函数,因为它还不存在 bar(); foo(); //现在可以调用b

前端PHP入门-030-文件函数API

bool file_exists ( $指定文件名或者文件路径) 功能:文件是否存在. bool is_readable ( $指定文件名或者文件路径) 功能:文件是否可读 bool is_writeable ( $指定文件名或者文件路径) 功能:文件是否可写 bool is_executable ( $指定文件名或者文件路径) 功能:文件是否可执行 bool is_file ( $指定文件名或者文件路径) 功能:是否是文件 bool is_dir ( $指定文件名或者文件路径) 功能:是否是目

算法竞赛入门读书笔记(自用,慎入)

例3.2最长回文子串 书中讲的很好,主要难点在三处 1. 输入字符串要含有空格,对应java下的readLine()方法即可 2. 查找回文串,暴力搜索,书中从中间搜索,没感觉复杂度降低多少 3. 原样输出,这就需要记录去除特殊符号后的串对应原串相应位置.(很常用的方法) import java.util.Scanner; public class Test { public static void main(String[] args) { Scanner input = new Scanne

如何写JavaScript中的callback回调函数

如何写回调函数? 如果自己在写一个方法或函数,你有可能会遇到需要一个回调函数.下面就是一个简单的常见回调函数例子: function mySandwich(param1, param2, callback) { alert('Started eating my sandwich.\n\nIt has: ' + param1 + ', ' + param2); callback(); } //调用该方法函数 mySandwich('ham', 'cheese', function() { aler