国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php中debug_backtrace、debug_print_backtrace和匿名函數用法實例

2024-05-04 23:28:21
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了php中debug_backtrace、debug_print_backtrace和匿名函數用法,以實例形式分析了debug_backtrace和debug_print_backtrace函數在調試過程中的作用,并分析了PHP5.3新增匿名函數的用法,需要的朋友可以參考下
 
 

本文實例講述了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 同時也在匿名函數中.

先看一下匿名函數的示例,作為回調函數的參數,代碼如下:

復制代碼代碼如下:
<?php  
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程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 朝阳区| 郧西县| 新平| 丰宁| 如东县| 军事| 无极县| 外汇| 西林县| 天等县| 白水县| 高尔夫| 威宁| 奉新县| 潜江市| 太谷县| 和硕县| 敦煌市| 昌宁县| 娱乐| 丽江市| 北票市| 柏乡县| 盐山县| 大竹县| 梁河县| 维西| 云梦县| 康保县| 神农架林区| 湘潭市| 海丰县| 莱阳市| 拜泉县| 宝清县| 上虞市| 灵宝市| 盐津县| 建瓯市| 东台市| 平昌县|