本文实例讲述了php中debug_backtrace、debug_print_backtrace和匿名函数用法。分享给大家供大家参考。具体分析如下:

debug_print_backtrace() 是一个很低调的函数,很少有人注意过它.

不过当我们对着一个对象调用另一个对象再调用其它的对象和文件中的一个函数出错时,它正在一边笑呢.

debug_print_backtrace() 可以打印出一个页面的调用过程,从哪儿来到哪儿去一目了然.不过这是一个PHP5的专有函数,好在pear中已经有了实现.

一、debug_backtrace 它可以回溯跟踪函数的调用信息,可以说是一个调试利器,代码如下:

one();

function one() {    two();     }

function two() {    three();  }

function three() {    print_r( debug_backtrace() );   }

/*输出:

Array(

[0] => Array        (

[file] => D:apmservwwwhtdocstestdebugindex.php

[line] => 10

[function] => three

[args] => Array                (                )

),

[1] => Array        (

[file] => D:apmservwwwhtdocstestdebugindex.php

[line] => 6

[function] => two

[args] => Array                (                )

),

[2] => Array        (

[file] => D:apmservwwwhtdocstestdebugindex.php

[line] => 3

[function] => one

[args] => Array                (                )

)

)*/

二、debug_print_backtrace 它与之不同的是它会直接打印回溯信息.

三、匿名函数

从PHP 5.3开始新增了匿名函数(Anonymous functions),也叫闭包函数(closures),关键字 use 同时也在匿名函数中.

先看一下匿名函数的示例,作为回调函数的参数,代码如下:

echo preg_replace_callback('~-([a-z])~', function ($match) {

return strtoupper($match[1]);

}, 'hello-world'

);

// 输出 helloWorld

?>

连接闭包和外界变量的关键字:USE

闭包可以保存所在代码块上下文的一些变量和值,PHP在默认情况下,匿名函数不能调用所在代码块的上下文变量,而需要通过使用use关键字,代码如下:

function test(){

$num = 2;

$array = array(1,2,3,4,5,6,7,8);

print_r(array_filter($array, function($param)  use ($num){

return $param % intval($num) ==0; })

);}

test();

希望本文所述对大家的PHP程序设计有所帮助。

php debug_print_backtrace,php中debug_backtrace、debug_print_backtrace和匿名函数用法实例相关推荐

  1. python匿名函数里用if_python匿名函数用法实例分析

    本文实例讲述了python匿名函数用法.分享给大家供大家参考,具体如下: 匿名函数特点: 1.只能有一个表达式 2.不用return,默认return结果 3.不需要名字,防止函数名重复 4.是对象, ...

  2. python 匿名函数示例_扣丁学堂Python3开发之匿名函数用法示例详解

    扣丁学堂Python3开发之匿名函数用法示例详解 2018-07-26 14:01:11 1324浏览 今天扣丁学堂Python培训给大家分享关于Python3匿名函数用法,结合实例形式分析了Pyth ...

  3. Python中的startswith和endswith函数使用实例

    Python中的startswith和endswith函数使用实例 在Python中有两个函数分别是startswith()函数与endswith()函数,功能都十分相似,startswith()函数 ...

  4. python pygame鼠标点击_Python中pygame的mouse鼠标事件用法实例

    本文实例讲述了Python中pygame的mouse鼠标事件用法.分享给大家供大家参考,具体如下: pygame.mouse提供了一些方法获取鼠标设备当前的状态 ''' pygame.mouse.ge ...

  5. python中max函数用法_Python中max函数用法实例分析

    Python中max函数用法实例分析 更新时间:2015年07月17日 15:45:09 作者:优雅先生 这篇文章主要介绍了Python中max函数用法,实例分析了Python中max函数的功能与使用 ...

  6. python中property函数_python 邮件表格Python中property函数用法实例分析

    本文实例讲述了Python中property函数用法.分享给大家供大家参考,具体如下: 通常我们在访问和赋值属性的时候,都是在直接和类(实例的)的__dict__打交道,或者跟数据描述符等在打交道.但 ...

  7. zip在python中的用法_Python中zip()函数用法实例教程

    本文实例讲述了Python中zip()函数的定义及用法,相信对于Python初学者有一定的借鉴价值.详情如下: 一.定义: zip([iterable, ...])zip()是Python的一个内建函 ...

  8. python中symbols函数用法_Python基础之函数用法实例详解

    本文以实例形式较为详细的讲述了Python函数的用法,对于初学Python的朋友有不错的借鉴价值.分享给大家供大家参考之用.具体分析如下: 通常来说,Python的函数是由一个新的语句编写,即def, ...

  9. php simplexml_load_file 详解,php中simplexml_load_file函数用法实例讲解

    php中simplexml_load_file函数用法实例讲解 发布于 2015-02-07 06:53:40 | 136 次阅读 | 评论: 0 | 来源: 网友投递 PHP开源脚本语言PHP(外文 ...

最新文章

  1. Lagrange equation
  2. SQL SERVER 2008 登陆失败(SQL和windows都没有对应的权限)
  3. 信号量与条件变量的区别
  4. java默认数组值_数组元素默认的初始值都是什么
  5. 推动Windows的限制:物理内存
  6. 交付量强劲增长 特斯拉营收却将出现7年来首次下滑
  7. linux mysql phpadmin_Linux系统下安装phpmyadmin方法
  8. SQL ---- 查询字段为逗号拼接的字符串
  9. 杭电(杭州电子科技大学)可视计算基础大作业:绝地求生吃鸡预测
  10. 什么可以代替pencil?pencil的平替推荐
  11. Java实现小说分割器
  12. python发送qq文件_怎么用qq邮箱发文件-十分钟教你使用Python发送邮件(复制可用)...
  13. JavaScript与JScript的区别
  14. python mysql就业情况_影响员工离职因素分析—Mysql/python
  15. 【数学建模】2022亚太赛A题 结晶器熔炼结晶过程序列图像特征提取与建模分析
  16. CentOS8安装QT5.12的问题
  17. 无刷三相直流电机电动工具驱动方案设计
  18. API接口自动化测试框架搭建(一)-总体需求
  19. 使用C# 调用api接口获取法定节假日(百度api)
  20. linux 快速复制大量文件

热门文章

  1. python爬电影_使用Python多线程爬虫爬取电影天堂资源
  2. python 小说爬虫_从零开始写Python爬虫 --- 1.7 爬虫实践: 排行榜小说批量下载
  3. mac os和linux和安卓,在我的安卓手机里,安装Windows和macOS系统
  4. java编写一个集合类_Java集合类
  5. orange pi java_[中文]Orange Pi家族各大成员一览表
  6. mysql增加实例,MySQL的简单使用笔记:增加实例以及启动
  7. Redhat与ubuntu配置网卡
  8. 为何有些程序员总是想要“干掉”产品经理?
  9. [3/21]Windows Server 2008时钟方面的改进展示
  10. RoboMaster 2017:机器人版的「王者农药」,工程师们的竞技时代