《PHP Web應(yīng)用開發(fā)案例教程》630-9(阮云蘭)教案 第10課 數(shù)組輸出和遍歷_第1頁
《PHP Web應(yīng)用開發(fā)案例教程》630-9(阮云蘭)教案 第10課 數(shù)組輸出和遍歷_第2頁
《PHP Web應(yīng)用開發(fā)案例教程》630-9(阮云蘭)教案 第10課 數(shù)組輸出和遍歷_第3頁
《PHP Web應(yīng)用開發(fā)案例教程》630-9(阮云蘭)教案 第10課 數(shù)組輸出和遍歷_第4頁
《PHP Web應(yīng)用開發(fā)案例教程》630-9(阮云蘭)教案 第10課 數(shù)組輸出和遍歷_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

PAGE6PAGE6PAGE7PAGE7

課題數(shù)組的輸出和遍歷課時2課時(90min)教學(xué)目標(biāo)知識技能目標(biāo):(1)了解數(shù)組的聲明方法,以及其分類和構(gòu)造(2)掌握數(shù)組的輸出和遍歷方法素質(zhì)目標(biāo):(1)能夠領(lǐng)會PHP數(shù)組的作用(2)培養(yǎng)學(xué)生的邏輯思維、辯證思維和創(chuàng)新思維能力(3)掌握基礎(chǔ)知識,加強(qiáng)實踐練習(xí),提升專業(yè)技能和職業(yè)素養(yǎng)教學(xué)重難點教學(xué)重點:數(shù)組的聲明教學(xué)難點:數(shù)組的輸出和遍歷教學(xué)方法案例分析法、問答法、討論法、講授法、實踐法教學(xué)用具電腦、投影儀、多媒體課件、教材教學(xué)設(shè)計第1節(jié)課:→→→傳授新知(38min)第2節(jié)課:→傳授新知(20min)→課堂實訓(xùn)(15min)→課堂小結(jié)(3min)→作業(yè)布置(2min)教學(xué)過程主要教學(xué)內(nèi)容及步驟設(shè)計意圖第一節(jié)課課前任務(wù)【教師】布置課前任務(wù),和學(xué)生負(fù)責(zé)人取得聯(lián)系,讓其提醒同學(xué)通過文旌課堂APP或其他學(xué)習(xí)軟件,預(yù)習(xí)本節(jié)課要學(xué)習(xí)的知識【學(xué)生】完成課前任務(wù)通過課前任務(wù),使學(xué)生預(yù)習(xí)本節(jié)課要學(xué)習(xí)的知識,增加學(xué)生的學(xué)習(xí)興趣考勤(2min)【教師】使用文旌課堂APP進(jìn)行簽到【學(xué)生】班干部報請假人員及原因培養(yǎng)學(xué)生的組織紀(jì)律性,掌握學(xué)生的出勤情況問題導(dǎo)入(5min)【教師】提出以下問題:數(shù)組是什么?有哪些特征?通過問題導(dǎo)入,引導(dǎo)學(xué)生主動思考,激發(fā)學(xué)生的學(xué)習(xí)興趣傳授新知(38min)【教師】通過學(xué)生的回答引入要講的知識,講解PHP中的數(shù)組,以及數(shù)組的應(yīng)用6.1初識數(shù)組?【教師】安排學(xué)生掃碼觀看視頻“初識數(shù)組”,講解知識?【學(xué)生】掃碼觀看、理解、記憶數(shù)組是一個可以存儲一組或一系列數(shù)值的變量。數(shù)組由多個元素組成,每個元素由“鍵”和“值”組成。其中,數(shù)組元素的“鍵”又稱“下標(biāo)”或“索引”,鍵名以數(shù)字或字符串標(biāo)識,代表元素在數(shù)組中的位置;數(shù)組元素的“值”也就是鍵值,可以是任意類型的數(shù)據(jù),如布爾型、字符串型、整型、浮點型等。?【教師】講解“知類通達(dá)”中的內(nèi)容?【學(xué)生】聆聽、理解、記憶具有相同數(shù)據(jù)類型的數(shù)據(jù)可以存儲在數(shù)組中,正如志同道合的人相聚成群,即古人所說的“人以群分”。古人還說“近朱者赤,近墨者黑”,用于比喻接近好的人會讓自己也變好,接近壞的人會讓自己也變壞。因此,我們應(yīng)該多和具有正能量的人交往,以便更好地提升自己。6.1.1數(shù)組的聲明在PHP中,聲明數(shù)組的方式主要有兩種:一是應(yīng)用array()函數(shù)聲明數(shù)組,二是直接為數(shù)組元素賦值。1.應(yīng)用array()函數(shù)聲明數(shù)組應(yīng)用array()函數(shù)聲明數(shù)組的語法格式如下:array([key=>]value,[key=>]value,…);其中,key是數(shù)組元素的鍵,可以是整數(shù)、浮點數(shù)或字符串,如果是浮點數(shù),將被轉(zhuǎn)換為整數(shù);value是數(shù)組元素的值,可以是任何類型的數(shù)據(jù),當(dāng)其為數(shù)組時,將構(gòu)成多維數(shù)組;[key=>]是可以省略的部分,若省略該部分,則key默認(rèn)為整數(shù),且從0開始。2.直接為數(shù)組元素賦值除上述方法外,還可以采用直接為數(shù)組元素賦值的方法來聲明數(shù)組,其語法格式如下:$數(shù)組名[索引值]=元素值;其中,索引值可以是整數(shù)或字符串;元素值可以是任何類型的數(shù)據(jù),當(dāng)其為數(shù)組時,將構(gòu)成多維數(shù)組。?【教師】通過多媒體展示例6-1的代碼和運行結(jié)果,并進(jìn)行講解應(yīng)用數(shù)組。實例代碼如下:<?php $cars1=array("Volvo","BMW","SAAB"); //使用array()函數(shù)聲明數(shù)組 $cars2[0]="大眾"; //使用直接賦值定義數(shù)組,數(shù)組元素下標(biāo)從0開始 $cars2[1]="起亞"; $cars2[2]="豐田"; //輸出數(shù)組元素 echo"Ilike".$cars1[0].",".$cars1[1]."and".$cars1[2]."."."<br>"; echo"打印數(shù)組鍵和值如下:<br>"; print_r($cars2);echo"<br>"; //打印數(shù)組鍵和值?>6.1.2數(shù)組的分類PHP支持兩種數(shù)組:索引數(shù)組(indexedarray)和關(guān)聯(lián)數(shù)組(associativearray)。前者使用數(shù)字作為鍵(下標(biāo)),默認(rèn)索引值從0開始,如例6-1中的數(shù)組$cars1和$cars2;后者使用字符串作為鍵(下標(biāo)),也可以是數(shù)字和字符串混合的形式。一個數(shù)組中只要有一個鍵名不是數(shù)字,那么該數(shù)組就稱為關(guān)聯(lián)數(shù)組。6.1.3數(shù)組的構(gòu)造數(shù)組本質(zhì)上是用來存儲、管理和操作一組數(shù)據(jù)的,PHP支持一維數(shù)組和二維數(shù)組。一維數(shù)組:當(dāng)一個數(shù)組的元素是除數(shù)組以外的其他類型數(shù)據(jù)時,則稱其為一維數(shù)組。例6-1中的兩個數(shù)組均為一維數(shù)組。二維數(shù)組:當(dāng)一個數(shù)組的元素是一個數(shù)組時,則稱其為二維數(shù)組。?【教師】通過多媒體展示例6-2的代碼和運行結(jié)果,并進(jìn)行講解本例分別使用上述算術(shù)運算符進(jìn)行運算。<?php //定義二維數(shù)組 $str=array("辦公應(yīng)用"=>array("Word","Excel","Powerpoint"), "平面設(shè)計"=>array("m"=>"Photoshop","n"=>"CorelDRAW","o"=>"Illustrator"), "Web開發(fā)"=>array("PHP",8=>"ASP.NET","JSP"));print_r($str);//輸出數(shù)組?>二維數(shù)組也叫多維數(shù)組,是指包含一個或多個數(shù)組的數(shù)組?!緦W(xué)生】聆聽、思考、記錄通過教師的講解和演示,使學(xué)生了解PHP中的數(shù)組的定義,以及數(shù)組的應(yīng)用第二節(jié)課問題導(dǎo)入(5min)【教師】提出以下問題:編碼規(guī)范并不是強(qiáng)制性的,即使代碼的格式不是太規(guī)范,也可以正常運行。那么,我們?yōu)槭裁催€要遵守編碼規(guī)范呢?【學(xué)生】思考、舉手回答通過問題導(dǎo)入,引導(dǎo)學(xué)生主動思考,激發(fā)學(xué)生的學(xué)習(xí)興趣傳授新知(20min)【教師】通過學(xué)生的回答引入新知,介紹PHP中數(shù)組的輸出和遍歷的方法6.2數(shù)組的輸出和遍歷6.2.1數(shù)組的輸出在PHP中,要輸出數(shù)組的某一元素,通常使用echo和print語句;要輸出數(shù)組結(jié)構(gòu),可以通過print_r()函數(shù)來實現(xiàn)。print_r()函數(shù)的語法格式如下:boolprint_r(mixed$expression)如果該函數(shù)的參數(shù)expression為普通的字符串型、整型或浮點型變量,則直接輸出該變量;如果該參數(shù)為數(shù)組,則按照鍵名和元素的順序輸出數(shù)組中的所有元素,如例6-2中便使用該函數(shù)輸出了數(shù)組。6.2.2數(shù)組的遍歷數(shù)組主要是對多個相互關(guān)聯(lián)的數(shù)據(jù)進(jìn)行批量處理。在實際應(yīng)用中,經(jīng)常需要對整個數(shù)組進(jìn)行統(tǒng)一管理,所以需要對數(shù)組進(jìn)行遍歷。對數(shù)組進(jìn)行遍歷的方法有很多,下面分別介紹。1.使用foreach循環(huán)遍歷數(shù)組foreach是用于遍歷數(shù)組元素最簡單有效的方法。它僅能用于數(shù)組或?qū)ο?,如果要將其用于其他?shù)據(jù)類型或一個未初始化的變量,將會產(chǎn)生錯誤。foreach循環(huán)有以下兩種用法:foreach(array_nameas$value){//第一種用法statement;}其中,array_name是所要遍歷的數(shù)組名,每次循環(huán)中,array_name數(shù)組中當(dāng)前元素的值被賦給$value,并且數(shù)組內(nèi)部的下標(biāo)向下一個元素移一步,直至數(shù)組末尾。foreach(array_nameas$key=>$value){//第二種用法statement;}第二種用法跟第一種的區(qū)別就是多了個$key,也就是除了把當(dāng)前元素的值賦給$value外,當(dāng)前元素的鍵名也會在每次循環(huán)中被賦給變量$key。鍵名可以是數(shù)字,也可以是字符串。例如,book[0]=1中的“0”,book[id]="001"中的“id”。實際應(yīng)用中如果需要訪問數(shù)組的鍵名,可以采用foreach循環(huán)的第二種用法。?【教師】通過多媒體展示例6-3的代碼和運行結(jié)果,并進(jìn)行講解使用foreach循環(huán)遍歷數(shù)組。實例代碼如下:<?php $a=array(1,2,3,17); $b=array( "one"=>"1", "two"=>"2", "three"=>"3", "seventeen"=>"17" ); echo"輸出數(shù)組a所有元素值:".'<br>'; foreach($aas$value){ echo$value." "; //12317 } echo"<hr>"; //輸出水平線 echo"輸出數(shù)組b所有鍵名和元素值:".'<br>'; foreach($bas$key=>$value){ echo$key."=>".$value." "; //one=>1two=>2three=>3seventeen=>17 }?>2.使用each()、list()函數(shù)和while循環(huán)遍歷數(shù)組使用each()函數(shù)遍歷數(shù)組,是將數(shù)組當(dāng)作參數(shù)傳遞給each()函數(shù),返回數(shù)組中當(dāng)前元素的鍵名和鍵值,并向后移動數(shù)組指針到下一個元素的位置,如果指針越過了數(shù)組末端,則返回false。當(dāng)前元素的鍵名和鍵值返回到帶有4個元素的數(shù)組中,其中兩個元素(1和value)包含鍵值,兩個元素(0和key)包含鍵名。?【教師】通過多媒體展示例6-4的代碼和運行結(jié)果,并進(jìn)行講解使用each()函數(shù)遍歷數(shù)組。實例代碼如下:<?php$arr=array('ccy','yyy','wyq','dyl'); $name=each($arr); //將數(shù)組$arr中第一個元素賦值給$name,并下移指針 print_r($name); //輸出Array([1]=>ccy[value]=>ccy[0]=>0[key]=>0) echo"<br>"; $name=each($arr); print_r($name); echo"<br>"; $name=each($arr); print_r($name); echo"<br>"; $name=each($arr); print_r($name);?>使用list()函數(shù)遍歷數(shù)組,實際是通過“=”把數(shù)組中的元素值逐個賦給函數(shù)中的參數(shù),list()函數(shù)又將自己的參數(shù)轉(zhuǎn)換成在腳本中可以直接使用的變量。?【教師】通過多媒體展示例6-5的代碼和運行結(jié)果,并進(jìn)行講解使用list()函數(shù)遍歷數(shù)組。實例代碼如下:<?php$arr=array('ccy','yyy','wyq','dyl'); //將數(shù)組$arr中4個元素的值分別賦$name0,$name1,$name2和$name3 list($name0,$name1,$name2,$name3)=$arr; echo"name0:".$name0."<br>";//輸出name0:ccy echo"name1:".$name1."<br>"; echo"name2:".$name2."<br>"; echo"name3:".$name3."<br>";?>list()函數(shù)僅能用于數(shù)字索引的數(shù)組,且數(shù)字索引從0開始。?【教師】通過多媒體展示例6-6的代碼和運行結(jié)果,并進(jìn)行講解使用each()、list()函數(shù)和while循環(huán)遍歷數(shù)組。實例代碼如下:<?php$arr=array('ccy','yyy','wyq','dyl');while(list($key,$val)=each($arr)){ //自行分析賦值過程echo"Hernameis$val.<br>"; //循環(huán)輸出“Hernameis$val”}?>3.使用for循環(huán)遍歷數(shù)組for循環(huán)是通過數(shù)組的下標(biāo)來訪問數(shù)組中的元素,并且必須保證下標(biāo)是連續(xù)的數(shù)字索引。?【教師】通過多媒體展示例6-7的代碼和運行結(jié)果,并進(jìn)行講解使用for循環(huán)遍歷數(shù)組。實例代碼如下:<?php$arr=array('ccy','yyy','wyq','dyl'); //定義數(shù)組變量for($i=0;$i<count($arr);$i++){ //初始化$i,判斷條件,滿足則執(zhí)行循環(huán)語句塊$str=$arr[$i]; //將數(shù)組元素賦值給變量$strecho"Hernameis$str.<br>"; //循環(huán)輸出“Hernameis$str.”}?>【學(xué)生】聆聽、理解、記錄通過教師的講解和演示,使學(xué)生了解PHP中數(shù)組的輸出和遍歷的方法課堂實訓(xùn)(15min)【教師】組織學(xué)生根據(jù)步驟提示,定義數(shù)組并將其輸出編寫代碼塊:定義一個小組名字的數(shù)組,賦值為每位組員自己的名字,并進(jìn)行循環(huán)輸出,歡迎你,XXX!。啟

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論