PHP中閉包的一些常見問題介紹
PHP具有非常強大的功能,所有的CGI的功能PHP都能實現,而且支持幾乎所有流行的數據庫以及操作系統(tǒng)。最重要的是PHP可以用C、C++進行程序的擴展!以下是小編為大家搜索整理的PHP中閉包的一些常見問題,希望能給大家?guī)韼椭?更多精彩內容請持續(xù)關注我們考試網!
首先說明下...閉包是js高級特性之一...但并非js獨有...perl, python, php(5.3以上版本) 都是支持閉包的..
官方解釋: 所謂“閉包”,指的是一個擁有許多變量和綁定了這些變量的環(huán)境的表達式(通常是一個函數),因而這些變量也是該表達式的一部分
john resig解釋: 閉包就是內部函數可以訪問外部函數中所定義的變量,即使該函數已經執(zhí)行結束。
如果你還是不能明白上面那句話...那么我就換句話來說:
在js中...執(zhí)行一個函數A...當函數A執(zhí)行完后...理論上來講...改函數A內所有被定義的 臨時變量都將被 當成可回收的`垃圾等待垃圾回收....然而在這個過程..有一種臨時變量是無法被垃圾回收的...當A函數中有一個內部函數a時.a函數內引用了A中定義的臨時變量...并且a函數在A函數執(zhí)行完后..仍然可以被外部訪問到時...被a函數所引用的臨時變量就無法被當成垃圾等待垃圾回收.. 而a函數可以被外部訪問的同時..就生成了一個閉包...
【PHP中閉包的一些常見問題介紹】相關文章: