php中自訂函數及陣列實例詳解
一、自訂函數
#自訂函數就是我們自己定義的函數,在PHP中自訂函數格式如下:
function funname(arg1, arg2, arg3......){ //TODO return values; }
<?php function fun($m, $n){ if($m==0 || $n==0){ return 0; }else{ $a=$m*$n; return $a; } } $p=2; $h=3; echo $p."*".$h."=".fun($p,$h); ?>
輸出結果:#下面再舉一個可變參數的函數
<?php /* function fun($m, $n){ if($m==0 || $n==0){ return 0; }else{ $a=$m*$n; return $a; } } $p=2; $h=3; echo $p."*".$h."=".fun($p,$h); */ function fun($m, $n=1, $x=2){ $a=$m*$n*$x; return $a; } $p=2; echo fun($p)."<br>"; // 2*1*2 = 4 echo fun($p, 3)."<br>"; // 2*3*2 = 12 echo fun($p, 3, 3)."<br>"; // 2*3*3 = 18 ?>
<?php /* function fun($m, $n){ if($m==0 || $n==0){ return 0; }else{ $a=$m*$n; return $a; } } $p=2; $h=3; echo $p."*".$h."=".fun($p,$h); */ /* function fun($m, $n=1, $x=2){ $a=$m*$n*$x; return $a; } $p=2; echo fun($p)."<br>"; // 2*1*2 = 4 echo fun($p, 3)."<br>"; // 2*3*2 = 12 echo fun($p, 3, 3)."<br>"; // 2*3*3 = 18 */ function fun(&$n){ $n=$n*$n; } $p=2; fun($p); echo $p; ?>
//第一种 $arr1=array(11, 22, 33, "44"); //第二种 $arr2=array('a'=>'11', 'b'=>'22'); //第三种 $arr3[0]='20'; $arr3[1]='30';
$arr=array(11, 22, 33, 44); $arr[0]=55; //数组变为$arr=array(55, 22, 33, 44);
$arr=array(11, 22, 33, 44); unset($arr[0]); //数组变为$arr=array(22, 33, 44);
$arr=array(11, 22, 33, 44); echo $arr[0]; $arr=array('a'=>11, 'b'=>22, 'c'=>33, 'd'=>44); echo $arr['b']];
$arr=array('a'=>11, 'b'=>22, 'c'=>33, 'd'=>44); foreach($arr as $value){ //无键名 echo $value."<br>"; } foreach($arr as $id=>$value){ //输出键和值 echo $id..$value."<br>"; }
$arr=array(array("1","11","111"), array("2","22","222")); echo $arr[1][2];
array_change_key_case(array, case)
array:必需,陣列。 case:可選,CASE_LOWER(預設值,小寫字母傳回數組的鍵),CASE_UPPER(大寫字母傳回數組的鍵)作用:將數組的所有的KEY 都轉換為大寫或小寫。<?php $a=array("a"=>"Cat","b"=>"Dog","c"=>"Horse"); print_r(array_change_key_case($a,CASE_UPPER)); ?> 结果:Array ( [A] => Cat [B] => Dog [C] => Horse )
<?php //array_chunk(array,size,preserve_key) $a1=array("a"=>"Cat","b"=>"Dog","c"=>"Horse","d"=>"Cow"); print_r(array_chunk($a1,2)); $a2=array("a"=>"Cat","b"=>"Dog","c"=>"Horse","d"=>"Cow"); print_r(array_chunk($a2,2,true)); ?>
Array ( [0] => Array ( [a] => Cat [b] => Dog ) [1] => Array ( [c] => Horse [ d] => Cow ) )
函數 | 描述 | PHP |
---|---|---|
#array() | #建立陣列。 | 3 |
array_change_key_case() | 傳回其鍵皆為大寫或小寫的陣列。 | 4 |
array_chunk() | #把一個陣列分割成新的陣列區塊。 | 4 |
array_combine() | #透過合併兩個陣列來建立一個新陣列。 | 5 |
array_count_values() | 用於統計數組中所有值出現的次數。 | 4 |
array_diff() | #傳回兩個陣列的差集陣列。 | 4 |
array_diff_assoc() | 比較鍵名和鍵值,並傳回兩個陣列的差集陣列。 | 4 |
array_diff_key() | #比較鍵名,並傳回兩個陣列的差集陣列。 | 5 |
array_diff_uassoc() | 透過使用者提供的回呼函數做索引檢查來計算陣列的差集。 | 5 |
array_diff_ukey() | 用回呼函數對鍵名比較計算陣列的差集。 | 5 |
array_fill() | #用給定的值填入陣列。 | 4 |
array_filter() | #用回呼函數過濾陣列中的元素。 | 4 |
array_flip() | #交換陣列中的鍵和值。 | 4 |
array_intersect() | #計算陣列的交集。 | 4 |
array_intersect_assoc() | 比較鍵名和鍵值,並傳回兩個陣列的交集陣列。 | 4 |
array_intersect_key() | 使用鍵名比較計算陣列的交集。 | 5 |
array_intersect_uassoc() | 帶索引檢查計算陣列的交集,用回呼函數比較索引。 | 5 |
array_intersect_ukey() | 用回呼函數比較鍵名來計算陣列的交集。 | 5 |
array_key_exists() | 檢查給定的鍵名或索引是否存在於陣列中。 | 4 |
array_keys() | #傳回陣列中所有的鍵名。 | 4 |
array_map() | 將回呼函數作用到給定陣列的單元上。 | 4 |
array_merge() | #把一個或多個數字組合成一個陣列。 | 4 |
array_merge_recursive() | #遞歸地合併一個或多個陣列。 | 4 |
array_multisort() | 對多個陣列或多維數組進行排序。 | 4 |
array_pad() | 以值將陣列填入指定長度。 | 4 |
array_pop() | #將陣列最後一個單元彈出(出堆疊)。 | 4 |
array_product() | #計算陣列中所有值的乘積。 | 5 |
array_push() | #將一個或多個單元(元素)壓入陣列的末端(入堆疊)。 | 4 |
array_rand() | 從陣列中隨機選出一個或多個元素,並傳回。 | 4 |
array_reduce() | #用回呼函數迭代地將陣列簡化為單一的值。 | 4 |
array_reverse() | #將原始陣列中的元素順序翻轉,建立新的陣列並傳回。 | 4 |
array_search() | 在陣列中搜尋給定的值,如果成功則傳回對應的鍵名。 | 4 |
array_shift() | #刪除陣列中的第一個元素,並傳回被刪除元素的值。 | 4 |
array_slice() | #在陣列中依照條件取出一段值,並傳回。 | 4 |
array_splice() | #把陣列中的一部分去掉並用其它值取代。 | 4 |
array_sum() | #計算陣列中所有值的和。 | 4 |
array_udiff() | #用回呼函數比較資料來計算陣列的差集。 | 5 |
array_udiff_assoc() | 帶索引檢查計算數組的差集,用回調函數比較資料。 | 5 |
array_udiff_uassoc() | 帶索引檢查計算數組的差集,用回調函數比較資料和索引。 | 5 |
array_uintersect() | #計算陣列的交集,用回呼函數比較資料。 | 5 |
array_uintersect_assoc() | 帶索引檢查計算陣列的交集,用回呼函數比較資料。 | 5 |
array_uintersect_uassoc() | 帶索引檢查計算陣列的交集,用回呼函數比較資料和索引。 | 5 |
array_unique() | #刪除陣列中重複的值。 | 4 |
array_unshift() | #在陣列開頭插入一個或多個元素。 | 4 |
array_values() | #傳回陣列中所有的值。 | 4 |
array_walk() | #對陣列中的每個成員套用使用者函數。 | 3 |
array_walk_recursive() | 對陣列中的每個成員遞歸地套用使用者函數。 | 5 |
arsort() | 對陣列進行反向排序並維持索引關係。 | 3 |
asort() | 對陣列進行排序並保持索引關係。 | 3 |
compact() | 建立一個數組,包括變數名稱和它們的值。 | 4 |
count() | 計算陣列中的元素數量或物件中的屬性個數。 | 3 |
current() | 傳回陣列中的目前元素。 | 3 |
each() | 傳回數組中目前的鍵/值對並將陣列指標向前移動一步。 | 3 |
end() | 將陣列的內部指標指向最後一個元素。 | 3 |
extract() | 從陣列中將變數匯入到目前的符號表。 | 3 |
in_array() | #檢查陣列中是否存在指定的值。 | 4 |
key() | 從關聯陣列取得鍵名。 | 3 |
krsort() | 對陣列依照鍵名逆向排序。 | 3 |
ksort() | 對陣列依照鍵名排序。 | 3 |
list() | 把陣列中的值賦給一些變數。 | 3 |
natcasesort() | #使用「自然排序」演算法對陣列進行不區分大小寫字母的排序。 | 4 |
natsort() | 以「自然排序」演算法對陣列排序。 | 4 |
next() | 將陣列中的內部指標向前移動一位。 | 3 |
pos() | current() 的別名。 | 3 |
prev() | 將陣列的內部指標倒回一位。 | 3 |
range() | 建立一個包含指定範圍的元素的陣列。 | 3 |
reset() | 將陣列的內部指標指向第一個元素。 | 3 |
rsort() | 對陣列反向排序。 | 3 |
shuffle() | 把陣列中的元素依照隨機順序重新排列。 | 3 |
sizeof() | count() 的別名。 | 3 |
sort() | 對陣列排序。 | 3 |
uasort() | 使用使用者自訂的比較函數對陣列中的值進行排序並保持索引關聯。 | 3 |
uksort() | 使用使用者自訂的比較函數對陣列中的鍵名進行排序。 | 3 |
usort() | 使用使用者自訂的比較函數對陣列中的值進行排序。 | 3 |
以上是php中自訂函數及陣列實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

本教程演示瞭如何使用PHP有效地處理XML文檔。 XML(可擴展的標記語言)是一種用於人類可讀性和機器解析的多功能文本標記語言。它通常用於數據存儲

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。
