PHP陣列部分詳解 傳智播客聽課筆記韓順平老師

2022-08-05 09:12:02 字數 3422 閱讀 7346

2023年1月1日

◆ 陣列講解

乙個問題?

乙個養雞場有6隻雞,它們的體重分別是3kg,5kg,1kg,3.4kg,2kg,50kg。請問這六隻雞的總體重是多少?平均體重是多少?請你用現在掌握的技術編一程式。

現在我們使用現有技術來解決這個問題

$hen1=3;

$hen1=5;

$hen1=1;

$hen1=3.4;

$hen1=2;

$hen1=50;

如果我們的變數很多,如果我們分別取變數名,顯然程式無法控制

怎麼辦?

我們可以使用乙個新的資料型別array陣列,來統一的管理這一組數

◆ 什麼是陣列

可以用於存放多個資料的資料型別,我們稱為陣列

快速體驗案例:用陣列來解決養雞場的問題

有時為了知道某個陣列共有多少個元素,可以使用系統函式count

$hens[0]=3;

$hens[1]=5;

$hens[2]=1;

$hens[3]=3.4;

$hens[4]=2;

$hens[5]=50;

$hens[6]=30;

$allweight=0;

//遍歷整個陣列

echo "共有".count($hens)."隻雞"."

"; for($i=0;$i

echo "

"."總體重=".$allweight."

平均體重=".$allweight/count($hens);

小結:該安全重點說明陣列的使用,細節稍後 。

◆ 陣列建立

在php中,陣列就是關鍵字和值的集合,我們可以這樣建立

1 建立陣列

$arr[0]=123;

$arr[1]=234;

$arr[2]=345;

幾個概念:

[0] 這個我們稱為下標,或者稱為關鍵字

$arr[0]- 這個稱為陣列的乙個元素

$arr[0]=123; 123表示該$arr[0]元素對應的值

$arr- 這個是該陣列的名稱

在php陣列中,每個元素存放的值可以是任意資料型別

舉例說明:

$arr[0]=123;

$arr[1]="hello";

$arr[2]=45.6;

$arr[3]=true;

$arr[4]=null;//即使放入乙個空值,也要佔乙個空間

echo "陣列大小".count($arr);

for($i=0;$i

2 建立陣列的第二種方式

基本語法是:

$陣列名=array(值,值,。。。。。。值);

舉例說明:

$arr=array(1,90,"heelow",89.5);

for($i=0;$i

3 建立陣列第三種方式 (在預設情況下,關鍵字是從0開始編號,但實際上,也可以自己指定)

基本語法:

$arr[『logo』]=」北京」;

$arr[『hsp』]=123;

或者$arr=array(「logo」=>」北京」,」hsp」=>123,4=>678)

案例演示:

//自己指定關鍵字

$arr['logo']="北京";

$arr['hsp']=123;

//這個foreach 適用範圍最更廣

foreach($arr as $key=>$val)

注意事項

如果我們建立乙個陣列的時候,沒有給某個元素指定下標,php就會自動的用目前最大的那個索引,下標值(整數),加上一作為該元素的下標(關鍵字)

$arr=array(5=>"logo",56.7,90);

//訪問"logo「 這個值

echo $arr[5];

echo "

".$arr[6];

②如果我們給某個元素的下標一樣,則會覆蓋原來的值

$arr=array(5=>"logo",56.7,90);

$arr[5]="yes";//把原先的值覆蓋掉

//訪問"logo「 這個值

echo $arr[5];

echo "

".$arr[6];

4 如果我們使用特殊true,false null 作為key,則應當訪問

$arr[true]="hellow";==>echo $arr[1];

$arr[false]="yes";==>echo $arr[0];

$arr[null]="北京";==>echo $arr[""];

echo $arr[0];//

echo $arr[1];//

echo $arr[""];//

5 $arr[true]="hellow";//==>echo $arr[1];

$arr[false]="yes";//==>echo $arr[0];

$arr[null]="北京";//==>echo $arr[""];

//我們通常可以用不用print_f()列印整個陣列

print_r($arr);

echo "

"; //var_dump可以更加詳細的顯示陣列的資訊

var_dump($arr);

6 訪問陣列的時候,不要越界,

7 php的陣列是可以動態增長的

$a=array(2,3);

$a[2]=56;

echo $a[2];

◆ 一維陣列的引用

基本語法:

$陣列名[鍵值];

如果你寫的鍵值不存在,則會報錯

一維陣列的使用陷阱:

$arr[bar]="hello,world";

echo $arr[bar];

這樣用是危險的

◆ php陣列中幾個重要的陣列

1. count函式,基本用法:

count($陣列名);用於統計該陣列中共有多少元素

2. is_array($arr)函式

用於判斷是不是乙個陣列

3. print_r()和var_dump() 同時顯示資料型別

4. explode (「按照什麼拆分」,字串)

$str="北京順平上海重慶";

//在實際開發中,涉及到字元拆分,可以考慮用此函式

$arr=explode(" ",$str);

print_r($arr);

5.unset()函式刪除陣列中某個元素或變數,但要注意陣列將不會重建索引,即關鍵字不會重新建立,

$arr[0]=123;

$arr[1]=456;

$arr[2]="hello";

//現在我要刪除$arr[1]元素

echo $arr[1];

unset($arr[1]);

echo $arr[1];

print_r($arr);

PHP生成靜態頁面詳解

一,php指令碼與動態頁面。php指令碼是一種伺服器端指令碼程式,可通過嵌入等方法與html檔案混合,也可以類,函式封裝等形式,以模板的方式對使用者請求進行處理。無論以何種方式,它的基本原理是這樣的。由客戶端提出請求,請求某一頁面 web伺服器引入指定相應指令碼進行處理 指令碼被載入伺服器 由伺服器...

PHP之COOKIE支援詳解

建立商業站點或者功能比較完善的個人站點,常常需要記錄訪問者的資訊,在php中提供了兩種方便的手段 session和cookie功能.為了永久的保持使用者資訊,則cookie是最便捷的手段.在這裡我將為大家詳細的講解cookie的功能及使用方法.一 設定cookie 使用cookie前必須設定cook...

php技術PHP中傳值賦值和引用賦值詳解

1.變數間的賦值方式 a 變數值 b a 將a變數的值賦值給b變數有這種傳值方式 1.傳值賦值 2.引用賦值 1.2.傳值賦值 將 a變數的值複製出乙份存放到 b變數中.修改 a和 b的值相互不會影響.因為他們各自指向自己的記憶體區域.1.3.引用賦值 將 a變數引用複製出乙份作為 b變數的引用.兩...