當前位置:首頁 » 編程語言 » php函數遞歸

php函數遞歸

發布時間: 2025-05-20 07:39:36

1. php中用遞歸函數計算出16的4次方

functionfunc($x,$n)
{
if搏枯握($n<=0)
敗碰return1;
基慶return$x*func($x,$n-1);
}
echofunc(16,4);

2. thinkphp鐢ㄩ掑綊鎬庝箞瀹炵幇鏃犻檺鍒嗙被

閫掑綊鍑芥暟鍗充負鑷璋冪敤鍑芥暟錛屽湪鍑芥暟浣撳唴鐩存帴鎴栭棿鎺ヨ嚜宸辮皟鐢ㄨ嚜宸憋紝浣嗛渶瑕佽劇疆鑷璋冪敤鐨勬潯浠訛紝鑻ユ弧瓚蟲潯浠訛紝鍒欒皟鐢ㄥ嚱鏁版湰韜錛岃嫢涓嶆弧瓚沖垯緇堟㈡湰鍑芥暟鐨勮嚜璋冪敤錛岀劧鍚庢妸鐩鍓嶆祦紼嬬殑涓繪帶鏉冧氦鍥炵粰涓婁竴灞傚嚱鏁版潵鎵ц岋紝鍙鑳借繖鏍風粰澶у惰茶В錛岃繕鏄寰堥毦鏄庣櫧銆

鎬濊礬錛

鍏堝緩絝嬪瑰簲鐨勬暟鎹搴撳拰琛錛

3. php遞歸的方法求和1+2+3+...+n

<?php
function add($n)
{
$result = 0;
for($i=1;$i<$n+1;$i++)
{
$result += $i;
}
return $result; 返回計算結果
}
echo add(5); //調用上面的函數
?>

4. 關於php遞歸函數創建級聯目錄的困惑

mkdir1剛進去就是判斷$dir存不存在,a/b/c/d/e說白了就是判斷有沒有e文件夾
如果沒有 繼續dirname($dir) 判斷a/b/c/d路徑的d文件夾有沒有
如果沒有 繼續dirname($dir) 判斷a/b/c路徑的c文件夾有沒有
依此類推直到
dirname($dir) 判斷a路徑的時候 不存在執行當前遞歸層的mkdir($dir) 創建a
存在則return,然後執行當前遞歸層上一級的mkdir($dir) 創建a/b
之後繼續上一級的mkdir($dir) 創建a/b/c
直到創建完a/b/c/d/e 遞歸結束

5. 如何理解php中的遞歸函數 (詳細講解)

遞歸其實就是「一個函數的自調用」
在這個「自調用」的過程中,必須要有一個變化的「參數」,當這個「參數」達到你的期望值的時候,終止該「自調用」過程

拿樓主的程序來說

demo($n)內部又有調用demo($n-1),構成了「自調用」
且,$n又有一個「期望值」,即是$n>1,不滿足此條件時,該自調用終止

即是說,最後一個執行的demo是demo($n9-1),其中$n9=2,然後返回為1(因為執行了return 1)
則$n9*demo($n9-1)即等於 2*demo(2-1),又等於2*1=2;
則$n8*demo($n8-1)即等於 3*demo(3-1),又等於3*2=6;
則$n7*demo($n7-1)即等於 4*demo(4-1),又等於4*6=24;
……
依次類推

這樣想:
demo(1)是等於1,這個沒有疑問吧?
然後demo(2)等於2*demo(1)=2*1=2
然後demo(3)等於3*demo(2)=3*2=6
……
一直到demo(10)

6. PHP怎麼遞歸

下面我舉一個其他的例子,雖然不是族譜,但是原理都是一樣的。

在一些復雜的系統中,要求對信息欄目進行無限級的分類,以增強系統的靈活性。那麼PHP是如何實現無限級分類的呢?我們在本文中使用遞歸演算法並結合mysql數據表實現無限級分類。
遞歸,簡單的說就是一段程序代碼的重復調用,當把代碼寫到一個自定義函數中,將參數等變數保存,函數中重復調用函數,直到達到某個條件才跳出,返回相應的數據。
Mysql
首先我們准備一張數據表class,記錄商品分類信息。表中有三個欄位,id:分類編號,主鍵自增長;title:分類名稱;pid:所屬上級分類id。
class表結構:

CREATE TABLE IF NOT EXISTS `class` (
`id` mediumint(6) NOT NULL AUTO_INCREMENT,
`title` varchar(30) NOT NULL,
`pid` mediumint(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

插入數據後,如圖:

如果要輸出json格式的數據,則可使用:

echo json_encode($list);

熱點內容
ftp搭建win7 發布:2025-05-20 10:06:06 瀏覽:81
訪問堅果 發布:2025-05-20 10:06:02 瀏覽:393
ftpxlight 發布:2025-05-20 10:05:22 瀏覽:110
java的實驗報告 發布:2025-05-20 10:02:06 瀏覽:528
豪華配置高電動轎車有哪些 發布:2025-05-20 10:01:59 瀏覽:487
哪些電腦配置低 發布:2025-05-20 09:34:16 瀏覽:955
地板網站源碼 發布:2025-05-20 09:27:23 瀏覽:346
安卓視頻轉換器怎麼使用 發布:2025-05-20 09:20:52 瀏覽:544
telnet批量腳本 發布:2025-05-20 09:11:58 瀏覽:627
搭建jrebel伺服器 發布:2025-05-20 08:57:40 瀏覽:903