第三講 PHP函數(shù)與數(shù)組_第1頁
第三講 PHP函數(shù)與數(shù)組_第2頁
第三講 PHP函數(shù)與數(shù)組_第3頁
第三講 PHP函數(shù)與數(shù)組_第4頁
第三講 PHP函數(shù)與數(shù)組_第5頁
已閱讀5頁,還剩19頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

目的和要求掌握函數(shù)定義及常用函數(shù)掌握數(shù)組創(chuàng)建、數(shù)組元素增加和刪除掌握數(shù)組定位和遍歷了解數(shù)組排序及其他常用數(shù)組函數(shù)PHP函數(shù)函數(shù)是由多行代碼組件的代碼塊,用于完成某項任務一般情況下,一個任務需要多次執(zhí)行,需要定義函數(shù)函數(shù)與方法,是一個含義,但函數(shù)常常寫在普通php文件中;而方法屬于類,通常位于類中。內(nèi)置函數(shù)自定義函數(shù)變量函數(shù)自定義函數(shù)為實現(xiàn)特定功能,由程序員自己創(chuàng)建語法格式:function函數(shù)名稱(參數(shù)1,參數(shù)2….){//代碼塊

return返回值;}函數(shù)引用

函數(shù)名(參數(shù)):

$abc=函數(shù)名(參數(shù)):函數(shù)的默認參數(shù)<?php

functionmakecoffee($type=“00")

{

return"$type.\n";

}

echomakecoffee();

echomakecoffee(“222");?>

輸出結(jié)果是:00222

當參數(shù)中不全是默認參數(shù)時,把默認參數(shù)寫在右側(cè)

如:functonfee($a,$b=“hello”);內(nèi)置(系統(tǒng))函數(shù)輸出函數(shù):echo

原型如下:voidecho(stringarg1[,stringargn])

echo(“hello”);

echo“aa”,”bb”;print()

原型如下:intprint(stringarg)

print(“aa”);

print“aa”;

二者功能類似,均可帶括號,也可不帶,一般習慣于略去。print_r()除打印字符串之外,主要用來打印數(shù)組。

$foo=array(‘蘋果’,’午餐’,’世界’);

print_r($foo);常用內(nèi)置函數(shù)isset(變量)用于判斷一個變量是否設(shè)置,如果是,返回真值(true)。果已經(jīng)使用unset()

釋放了一個變量之后,它將不再是isset()。若使用isset()測試一個被設(shè)置成NULL的變量,將返回FALSE。empty(變量)

用于判斷一個變量是否為空。對于字符串而言,“”表示空,對于數(shù)值而言為0表示空。exit()/exit(錯誤內(nèi)容)

表示退出程序,參數(shù)為錯誤內(nèi)容,并顯示在網(wǎng)頁上。包含函數(shù)require(“文件名”);include(“文件名”)require_once(“文件名”)include_once(“文件名”)說明:require和include功能基本相同,當文件不存在時include只是產(chǎn)生一個警告,而require()則導致一個致命錯誤。_once保證了此文件僅被包含一次。<?php

require‘prepend.php’;

require$somefile;

require(‘somefile.txt’);?>

變量函數(shù)php支持變量函數(shù)的概念,即用戶可以通過變量的值來指示函數(shù)名優(yōu)點:可以通過改變變量的值,調(diào)用不同的函數(shù)。實例:functonSay($name){echo“Mynameis$name!”;}functonHi($name){echo“Hi,$name!”;}$aa=“Say”;$aa(“John”);$aa=“Hi”;$aa(“John”);PHP數(shù)組數(shù)組創(chuàng)建PHP是一種松散型語言,因此在創(chuàng)建數(shù)組時不需要指定其大小PHP中使用array來創(chuàng)建一個數(shù)組:array(value,value……)

array(key=>value,key=>value……)例子:$arr=array(3,5,7,9,6);$arr=array("id"=>2,"title"=>3);數(shù)組實例//創(chuàng)建一個帶有索引的數(shù)組鍵既可以用字符,也可以使用數(shù)字 $speed=array(“aa"=>50,2=>120,3=>260,4=>300);//創(chuàng)建一個二維數(shù)組 $str=array("網(wǎng)絡(luò)編程圖書"=>array("PHP24堂課","C#24堂課","VB24堂課"), "歷史圖書"=>array("1"=>"春秋","2"=>"戰(zhàn)國","3"=>"左傳"), "文學圖書"=>array("明朝哪些事兒",3=>"狼圖騰","鬼吹燈") ); //二維數(shù)組遍歷

foreach($stras$key=>$link){ foreach($linkas$value){ echo$value."<br>"; }}使用range()創(chuàng)建數(shù)組如果使用array()函數(shù),建立一個包含100個元素的數(shù)組,每個元素的值之間都有一定的規(guī)律,在實際操作中是比較麻煩的。在這種情況下,就可以使用range()函數(shù)的自動功能來完成類似的操作。使用格式:array=range(low,high[,step])<?php $even=range(1,20,2); $letters=range("A","G“,3);?>

數(shù)組輸出及測試使用print_r()函數(shù)輸出: print_r($array);使用循環(huán)控制語句輸出: foreach($arrayas$key=>$value) { echo$key,"=>",$value,"<Br>"; }使用is_array()函數(shù)測試參數(shù)是否為數(shù)組類型,如果是返回true,否則返回false: $states=array("aa","bb"); echo"\$statesisanarray:".is_array($states)."<br>";數(shù)組元素的增加和刪除通過賦值增加數(shù)組元素 $arrays=array("河南"=>"鄭州"); $arrays["江西"]="南昌“;使用array_push()函數(shù)追加數(shù)組元素(入棧) intarray_push(arrayarr,mixedvar[,mixed...]) $a=array("Dog","Cat");array_push($a,"Horse","Bird");使用array_pop()返回數(shù)組的最后一個元素(出棧) mixedarray_pop(arrayarr)$b=array_pop($a);數(shù)組元素的增加和刪除array_shift():刪除數(shù)組中的第一個元素,并返回被刪除元素的值 mixedarray_shift(arrayarr)array_unshift():在數(shù)組開頭插入一個或多個元素 intarray_unshift(arrayarr,mixedvar[,mixed...])array_pad():用值將數(shù)組填補到指定長度 $a=array("Dog","Cat");print_r(array_pad($a,5,0));$a=array("Dog","Cat");print_r(array_pad($a,-5,0));

負號表示向左填補,正表示向右填補array_combine():通過合并兩個數(shù)組來創(chuàng)建一個新數(shù)組array_diff():返回兩個數(shù)組的差集數(shù)組array_intersect():計算數(shù)組的交集。。。數(shù)組元素定位當一個數(shù)組有很多元素時,使用數(shù)組遍歷來求證某個值或鍵名是否存在,在速度和效率上有一定的損失。PHP提供了in_array()和array_key_exists()函數(shù),可以快速從一個數(shù)組中取得某個值或鍵名是否存在in_array()示例: $os=array("Mac","NT","Irix","Linux"); if(in_array("Irix",$os)){ echo"GotIrix"; }array_key_exists()示例: $search_array=array("first"=>1,"second"=>2); if(array_key_exists("first",$search_array)) { echo“Thekeyfirstisinthearray"; }數(shù)組元素定位數(shù)組的操作主要是針對鍵名或值,如果在不壞被訪問數(shù)組的情況下可以單獨把數(shù)組中鍵名或值提取來進行操作array_keys():返回一個數(shù)組中所有單元的鍵名array_values():返回數(shù)組中所有的值實例:<?php$a=array("a"=>"Horse","b"=>"Cat","c"=>"Dog");print_r(array_keys($a));?><?php$a=array("a"=>"Horse","b"=>"Cat","c"=>"Dog");print_r(array_keys($a,"Dog"));?>array_unique(): 刪除數(shù)組中所有重復的值,返回一個由唯一值組成的數(shù)組示例:

$countrys=array("China","England","USA","Corlina","USA","England"); $uniqCons=array_unique($countrys); print_r($uniqCons);數(shù)組的遍歷很多情況下我們都需要對數(shù)組進行遍歷以獲得各個鍵和值,PHP提供很多了很多函數(shù)來完成相應任務常用函數(shù)key() 返回數(shù)組中當前鍵名。

reset() 將array的內(nèi)部指針倒回到第一個單元并返回第一個數(shù)組元素的值,如果數(shù)組為空則返回FALSE。each()

返回數(shù)組中當前的鍵/值對并將數(shù)組指針向前移動一步current()

返回數(shù)組中的當前單元的值end()

將數(shù)組的內(nèi)部指針指向最后一個元素next()

將數(shù)組中的內(nèi)部指針向前移動一位prev()

將數(shù)組的內(nèi)部指針倒回一位數(shù)組遍歷實例<?phpfunctionshowValue($arr){$flag=reset($arr);while(!is_bool($flag)){$key=key($arr);$value=current($arr);if(is_array($value))showValue($value);elseecho$key.":".$value,"<Br>";$flag=next($arr);}}$arr=array(0=>0,"color"=>"red",55,"two"=>array(1=>3,5,6,7));showValue(arr)?>數(shù)組排序數(shù)據(jù)排序時計算機科學中的核心問題,PHP也提供了很多對數(shù)組的排序函數(shù)sort():函數(shù)按升序?qū)o定數(shù)組的值排序。本函數(shù)為數(shù)組中的單元賦予新的鍵名。原有的鍵名將被刪除。實例:<?php$my_array=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");sort($my_array);print_r($my_array);?>輸出:Array([0]=>Cat[1]=>Dog[2]=>Horse)數(shù)組排序rsort()

功能與s

溫馨提示

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

評論

0/150

提交評論