公網(wǎng)怎么做網(wǎng)站石家莊疫情
上期我們講到了數(shù)組,數(shù)組是個(gè)特殊的變量,在程序中的重要程度很高,大部分?jǐn)?shù)據(jù)處理的時(shí)候會(huì)用到這種特殊的變量,那么現(xiàn)在讓我們繼續(xù)深入一下吧。
上期我們打印出了數(shù)組的值,用print_r()或者var_dump()這倆函數(shù),在本期中會(huì)涉及到用循環(huán)輸出數(shù)組的所有元素,和用特定的key值來獲取指定元素
一、獲取數(shù)組指定元素
1、一維數(shù)組
數(shù)值數(shù)組
$cars=array("Volvo","BMW","Toyota");
如果我們想取出某個(gè)元素 那么我們可以用數(shù)組名+下標(biāo)(key)的方式
因?yàn)槭菙?shù)值數(shù)組所以key必須是整數(shù)例如 0,1,2
語法:
$cars[num]
示例
如果我們想取得數(shù)組內(nèi)第一個(gè)元素的值
echo $cars[0];
結(jié)果:
Volvo
關(guān)聯(lián)數(shù)組
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
如果我們想取出某個(gè)元素 那么我們可以用數(shù)組名+下標(biāo)(key)的方式
關(guān)聯(lián)數(shù)組每個(gè)值有固定的key
語法:
$age["key"]
示例:
如果我們想取得下標(biāo)(key)為Peter的值
$age["Peter"]
結(jié)果:
35
2、 多維數(shù)組
上期我們講了多維數(shù)組的概念
語法:
1、數(shù)值數(shù)組
array (array (elements...),array (elements...),...
)
所以我們想取某個(gè)元素時(shí)根據(jù)上圖中就可以獲取到
<?php
// 二維數(shù)組:
$cars = array
(array("Volvo",100,96),array("BMW",60,59),array("Toyota",110,100)
);
?>
比如我們想取得$cars數(shù)組中第一個(gè)數(shù)組中的第二個(gè)元素
$cars[0][1]
輸出:
100
2、關(guān)聯(lián)數(shù)組
語法:
array ("key1"=> array (elements...),"key2"=> array (elements...),...
)
示例:
<?php
// 二維數(shù)組:
$cars = array
("Volvoinfo"=> array("Volvo",100,96),"BMWinfo"=>array("BMW",60,59),"Toyotainfo"=>array("Toyota",110,100)
);
?>
比如我們想取得 ”Volvoinfo“中的第一個(gè)元素
$cars["Volvoinfo"][0]
結(jié)果
Volvo
二、遍歷數(shù)組
上期我們講到數(shù)組有 ,數(shù)值數(shù)組、關(guān)聯(lián)數(shù)組、多維數(shù)組
現(xiàn)在有兩種方式遍歷數(shù)組
- for循環(huán)遍歷
- foreach循環(huán)遍歷
1、for循環(huán)遍歷
用for循環(huán)遍歷的話一般只用于遍歷數(shù)值數(shù)組,for循環(huán)的參數(shù)咱們應(yīng)該還記得吧
語法
for(初始值,條件,增量){}
那咱們?cè)趺创_定用于循環(huán)的參數(shù)呢呢?
- 初始條件,因?yàn)閿?shù)值數(shù)組的ID值是從0開始的(上期有講)所以當(dāng)循環(huán)數(shù)值數(shù)組時(shí)初始值維0
- 條件,我們循環(huán)不可能無限循環(huán),當(dāng)數(shù)組內(nèi)的元素被全部遍歷之后那么循環(huán)就該停止,所以數(shù)組的長度,或者說數(shù)組內(nèi)元素的個(gè)數(shù)就是咱們判斷的條件,當(dāng)循環(huán)次數(shù)大于數(shù)組的長度(個(gè)數(shù))時(shí),停止循環(huán)
示例:
<?php
//定義數(shù)組
$cars=array("Volvo","BMW","Toyota");
//獲取數(shù)組長度
$arrlength=count($cars);
//開始循環(huán)
for($x=0;$x<$arrlength;$x++)
{echo $cars[$x];echo "<br>";
}
?>
輸出:
Volvo
BMW
Toyota
本期會(huì)講關(guān)于數(shù)組的一些相關(guān)函數(shù),獲取數(shù)組長度的函數(shù)也會(huì)包括在內(nèi)
2、foreach循環(huán)遍歷
foreach循環(huán)不管是關(guān)聯(lián)數(shù)組還是數(shù)值數(shù)組都可以用,也是遍歷循環(huán)中最常用的
語法:
foreach($array as $key=>$val){}
foreach循環(huán)就不用判斷數(shù)組的長度,當(dāng)數(shù)組內(nèi)的元素被循環(huán)遍歷完成之后就會(huì)停止循環(huán)比較省心
示例:
<?php
$age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");foreach($age as $x=>$x_value)
{echo "Key=" . $x . ", Value=" . $x_value;echo "<br>";
}
?>
三、數(shù)組基本函數(shù)
- count()用于對(duì)數(shù)組或 Countable 對(duì)象中的所有元素進(jìn)行計(jì)數(shù)
- array_push()將一個(gè)或多個(gè)單元壓入數(shù)組的末尾(入棧)
- array_pop() 彈出數(shù)組最后一個(gè)單元(出棧)
- array_shift()將數(shù)組開頭的單元移出數(shù)組
- array_unshift()在數(shù)組開頭插入一個(gè)或多個(gè)單元
- array_slice()從數(shù)組中取出一段
- array_merge()合并一個(gè)或多個(gè)數(shù)組
- array_key_exists()檢查數(shù)組里是否有指定的鍵名或索引
- array_search()在數(shù)組中搜索給定的值,如果成功則返回首個(gè)相應(yīng)的鍵名
我都把相應(yīng)函數(shù)的詳細(xì)信息添加了超鏈接,大家可以點(diǎn)擊跳轉(zhuǎn)到官方網(wǎng)站(英語好的自行閱讀,英語不好的,在網(wǎng)頁 右擊-》翻譯為中文)
預(yù)告
下期講 對(duì)象