php基礎(chǔ)語法之函數(shù)遞歸和匿名函數(shù)_第1頁
php基礎(chǔ)語法之函數(shù)遞歸和匿名函數(shù)_第2頁
php基礎(chǔ)語法之函數(shù)遞歸和匿名函數(shù)_第3頁
php基礎(chǔ)語法之函數(shù)遞歸和匿名函數(shù)_第4頁
php基礎(chǔ)語法之函數(shù)遞歸和匿名函數(shù)_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

魔術(shù)常量的處理方式類似一個(gè)字符串值替換的過程!魔術(shù)常量不是常量,語法上類似常量,稱之為魔術(shù)常量!被載入文件內(nèi)的變量的作用域問題取決于被載入的位置。全局載入就是全局變量,局部載入就是局部變量!不定字符串?dāng)?shù)量的連接explode,將一個(gè)字符串,利用某個(gè)分隔符,切割成數(shù)小塊,放在數(shù)組內(nèi)!數(shù)組=explode(‘分隔符’,字符串)如果需要為一個(gè)函數(shù)傳遞未知的參數(shù),可以利用php的內(nèi)置函數(shù):調(diào)用函數(shù)的返回值=call_user_func_array(‘函數(shù)名’,參數(shù)數(shù)組);調(diào)用一下所指定的函數(shù)名函數(shù),并將數(shù)組內(nèi)的元素,作為函數(shù)的參數(shù)調(diào)用!還有一個(gè):調(diào)用函數(shù)的返回值=call_user_func(‘函數(shù)名’,$p1,$p2,…)可變函數(shù)函數(shù)的遞歸調(diào)用函數(shù)體內(nèi),再調(diào)用函數(shù)本身,稱之為遞歸調(diào)用!一個(gè)大問題,可以拆解成多個(gè)小問題。同時(shí)大問題,與拆分的小問題的解決方案一致!典型需要在調(diào)用函數(shù)解決大問題時(shí),內(nèi)部再調(diào)用該函數(shù)去解決拆分的小問題,就形成的遞歸調(diào)用!例如:我們需要解決斐波納挈數(shù)列:前兩項(xiàng)已知(典型的是1,1),從第三項(xiàng)開始,每項(xiàng)為前兩項(xiàng)的和1 1 2 3 5 8 13 21 34 55 89定義函數(shù),完成計(jì)算求得第N項(xiàng)斐波納挈數(shù)列的值!f(3)=2;f(5)=5f(10)=55典型:f(1)=1,f(2)=1;//前兩項(xiàng)已知f(n)=f(n-1)+f(n-2);//n>=3f(10)=f(9)+f(8); f(9)=f(8)+f(7);f(8)=f(7)+f(6)遞歸編程,語法上就是函數(shù)體內(nèi)調(diào)用函數(shù):存在兩個(gè)要點(diǎn):遞歸點(diǎn):什么時(shí)候遞歸調(diào)用。遞歸出口:什么時(shí)候不用遞歸調(diào)用。f(n)=f(n-1)+f(n-2);遞歸點(diǎn):遞歸出口:n<=2時(shí),已知,不需要在遞歸調(diào)用!模擬下上的函數(shù)的遞歸執(zhí)行過程!采用迭代法解決斐波納挈數(shù)列迭代,不是語法,算法的一個(gè)概念!將一個(gè)步驟,重復(fù)地執(zhí)行,直到問題解決:迭代的語法體現(xiàn),就是循環(huán)結(jié)果!再次解決斐波納挈問題:1 1 2 3 5 8 13 21 34 55 891123581321345589前二項(xiàng)前一項(xiàng)2前二項(xiàng)前一項(xiàng)3前二項(xiàng)前一項(xiàng)5前二項(xiàng)前一項(xiàng)89 注意概念:算法描述語法體現(xiàn)迭代循環(huán)遞歸函數(shù)內(nèi)調(diào)用函數(shù)本身分治算法(分而治之)關(guān)于函數(shù)的函數(shù)call_user_func_array()call_user_func();function_exists();

判斷一個(gè)函數(shù)是否被定義了create_function(),創(chuàng)建一個(gè)函數(shù),通過內(nèi)置的函數(shù)的形式,自動(dòng)完成函數(shù)的創(chuàng)建!函數(shù)名=create_function(‘參數(shù)列表’,‘函數(shù)體內(nèi)容’);此時(shí),可以根據(jù)當(dāng)前的業(yè)務(wù)邏輯,完成函數(shù)的創(chuàng)建:大家可以采用三種方法得到函數(shù):function創(chuàng)建一個(gè)普通函數(shù)function聲明一個(gè)匿名函數(shù)使用create_function來創(chuàng)建函數(shù)!有函數(shù)名!魔術(shù)常量,__FUNCTION__在函數(shù),獲得當(dāng)前的函數(shù)名的魔術(shù)常量!匿名函數(shù)沒有名字的函數(shù)是Closu

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論