1. 程式人生 > >20180821 PHP環境下 數組 函數

20180821 PHP環境下 數組 函數

有關 定義 lib strong 存儲 當下 系統函數 ron 獲得

數組基礎

數組長度 count($attr);

For($i = 0;$i<count($attr);$i++)

Foreach(){ }

數組基礎

php中,數組的下標可以是整數,或字符串。

php中,數組的元素順序不是由下標決定,而是由其“加入”的順序決定。

定義:
$arr1 = array(元素1,元素2,。。。。。 );

array(1, 5, 1.1, “abc”, true, false); //可以存儲任何數據,此時為“默認下標”,

array(2=>1, 5=>5, 3=>1.1, 7=>“abc”, 0=>true);//下標可以任意設定(無需順序,無需連續)

array(2=>1, 5, 1=>1.1, “abc”, 0=>true)//可以加下標,也可以不加(默認下標),下標分別是:2,3,1,4,0

//默認下標規則:前面已經用過的最大數字下標+1

array(2=>1, ‘dd’=>5, 1=>1.1, “abc”, 0=>true)//混合下標,同樣遵循默認下標規則

array(-2=>1, ‘dd’=>5, 1.1, “abc”, true); //負數下標不算在整數下標中,而只當作字符下標

//則最好3項的下標是:0, 1, 2

array(2.7=>1, ‘dd’=>5, 1=>1.1, “abc”, 0=>true)

//浮點數下標為自動轉換為整數,且直接抹掉小數

array(“2.7” =>1, ‘dd’=>5, “11”=>1.1, “abc”, true)//純數字字符串下標,當作數字看待,

//則此時下標為:2, ‘dd’, 11, 12, 13

array(2=>1, ‘dd’=>5, true=>1.1, “abc”, false=>true)//布爾值當下標,則true1false0

array(2=>1, ‘dd’=>5, 2=>1.1, “abc”, true)//如果下標跟前面的重復,則單純覆蓋前面同名下標的值

//此時相當於為:array(2=>1.1, ‘dd’=>5, “abc”, true)

其他形式;

$arr1[] = 1;

$arr1[] = 5;

$arr1[] = 1.1; //直接在變量後面使用[],就成為數組,並依次賦值。

。。。。

$arr2[‘aa’] = 1;

$arr2[‘bbbcc’] = 5;

$arrr2[5] = 1.1;

。。。。。。。。

這種形式寫的下標,其實跟使用array語法結構幾乎一樣

取值:通過下標。

賦值(同定義):

數組遍歷

遍歷基本語法

foreach( $arr as [ $key => ] $value ) //$key可以稱為鍵變量,$value可以稱為值變量。

{

//這裏就可以對$key $value 進行所有可能的操作——因為他們就是一個變量

//$key 代表每次取得元素的下標,可能是數字,也可以能是字符串

//$value 代表每次取得元素的值,可能是各種類型。

//此循環結構會從數組的第一項一直遍歷循環到最後一項,然後結束。

}

函數

基本使用

函數定義形式

FUNCTION RETURN

function 函數名 (形參1,形參2.... ){

//函數體(代碼塊)

}

函數參數問題

一個函數,

在定義時,有形式參數(形參);

1,形參一定是一個變量名!

2,該變量名只能是在該函數中有效的變量名;

3,而且只在該函數調用並執行時有效,函數結束,通常這些變量也就“銷毀”。

在調用時,有實際參數(實參)。

實參就是一個“實際數據”,

該數據可以是一個“直接數據”(比如5”abc”),也可以是一個變量中存儲的數據。

實參的作用是將其數據“賦值給”形參變量。

實參跟形參之間通常應該有個一一對應”關系:

定義形式: function 函數名(形參1,形參2...... ){ 。。。。}

調用形式: 函數名(實參1,實參2.....

在系統中,var_dump()這個函數也有同樣的使用效果:

var_dump($v1);

var_dump($v1, $v2, $v3); //也可以

這種應用的實現,是依賴與系統中的3個系統函數來達到的:

func_get_args(); //獲得一個函數所接收到的所有實參數據,並結果是一個數組

func_get_arg(n); //獲得一個函數所接收到的第n歌實參數據(n0開始)

func_num_args(); //獲得一個函數所接收到的所有實參數據的個數

實際應用中,常常是需要根據“用戶給定”的數據,來決定調用哪個函數,比如:

function jpg(){處理jpg}

function png(){處理png}

function gif(){處理gif}

$fileName = get_fileName(){獲取用戶上傳的圖片名};

$houzhui = get_houzhui($fileName);

$houzhui();

call_user_func_array(匿名函數,數組);

有關函數的系統函數:

function_exists():判斷某個函數是否被定義過,返回布爾值

if( function_exists(“ func1 “) == false ){

function func1(){。。。。。。}//定義函數

}

func_get_arg(n):獲得一個函數的第n個實參值(n從0開始)

func_get_args():獲得一個函數的所有實參,結果是一個數組

func_num_args():獲得一個函數的所有實參的個數。

20180821 PHP環境下 數組 函數