第三讲 PHP函数与数组_第1页
第三讲 PHP函数与数组_第2页
第三讲 PHP函数与数组_第3页
第三讲 PHP函数与数组_第4页
第三讲 PHP函数与数组_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目的和要求掌握函数定义及常用函数掌握数组创建、数组元素增加和删除掌握数组定位和遍历了解数组排序及其他常用数组函数PHP函数函数是由多行代码组件的代码块,用于完成某项任务一般情况下,一个任务需要多次执行,需要定义函数函数与方法,是一个含义,但函数常常写在普通php文件中;而方法属于类,通常位于类中。内置函数自定义函数变量函数自定义函数为实现特定功能,由程序员自己创建语法格式:function函数名称(参数1,参数2….){//代码块

return返回值;}函数引用

函数名(参数):

$abc=函数名(参数):函数的默认参数<?php

functionmakecoffee($type=“00")

{

return"$type.\n";

}

echomakecoffee();

echomakecoffee(“222");?>

输出结果是:00222

当参数中不全是默认参数时,把默认参数写在右侧

如:functonfee($a,$b=“hello”);内置(系统)函数输出函数:echo

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

echo(“hello”);

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

原型如下:intprint(stringarg)

print(“aa”);

print“aa”;

二者功能类似,均可带括号,也可不带,一般习惯于略去。print_r()除打印字符串之外,主要用来打印数组。

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

print_r($foo);常用内置函数isset(变量)用于判断一个变量是否设置,如果是,返回真值(true)。果已经使用unset()

释放了一个变量之后,它将不再是isset()。若使用isset()测试一个被设置成NULL的变量,将返回FALSE。empty(变量)

用于判断一个变量是否为空。对于字符串而言,“”表示空,对于数值而言为0表示空。exit()/exit(错误内容)

表示退出程序,参数为错误内容,并显示在网页上。包含函数require(“文件名”);include(“文件名”)require_once(“文件名”)include_once(“文件名”)说明:require和include功能基本相同,当文件不存在时include只是产生一个警告,而require()则导致一个致命错误。_once保证了此文件仅被包含一次。<?php

require‘prepend.php’;

require$somefile;

require(‘somefile.txt’);?>

变量函数php支持变量函数的概念,即用户可以通过变量的值来指示函数名优点:可以通过改变变量的值,调用不同的函数。实例:functonSay($name){echo“Mynameis$name!”;}functonHi($name){echo“Hi,$name!”;}$aa=“Say”;$aa(“John”);$aa=“Hi”;$aa(“John”);PHP数组数组创建PHP是一种松散型语言,因此在创建数组时不需要指定其大小PHP中使用array来创建一个数组:array(value,value……)

array(key=>value,key=>value……)例子:$arr=array(3,5,7,9,6);$arr=array("id"=>2,"title"=>3);数组实例//创建一个带有索引的数组键既可以用字符,也可以使用数字 $speed=array(“aa"=>50,2=>120,3=>260,4=>300);//创建一个二维数组 $str=array("网络编程图书"=>array("PHP24堂课","C#24堂课","VB24堂课"), "历史图书"=>array("1"=>"春秋","2"=>"战国","3"=>"左传"), "文学图书"=>array("明朝哪些事儿",3=>"狼图腾","鬼吹灯") ); //二维数组遍历

foreach($stras$key=>$link){ foreach($linkas$value){ echo$value."<br>"; }}使用range()创建数组如果使用array()函数,建立一个包含100个元素的数组,每个元素的值之间都有一定的规律,在实际操作中是比较麻烦的。在这种情况下,就可以使用range()函数的自动功能来完成类似的操作。使用格式:array=range(low,high[,step])<?php $even=range(1,20,2); $letters=range("A","G“,3);?>

数组输出及测试使用print_r()函数输出: print_r($array);使用循环控制语句输出: foreach($arrayas$key=>$value) { echo$key,"=>",$value,"<Br>"; }使用is_array()函数测试参数是否为数组类型,如果是返回true,否则返回false: $states=array("aa","bb"); echo"\$statesisanarray:".is_array($states)."<br>";数组元素的增加和删除通过赋值增加数组元素 $arrays=array("河南"=>"郑州"); $arrays["江西"]="南昌“;使用array_push()函数追加数组元素(入栈) intarray_push(arrayarr,mixedvar[,mixed...]) $a=array("Dog","Cat");array_push($a,"Horse","Bird");使用array_pop()返回数组的最后一个元素(出栈) mixedarray_pop(arrayarr)$b=array_pop($a);数组元素的增加和删除array_shift():删除数组中的第一个元素,并返回被删除元素的值 mixedarray_shift(arrayarr)array_unshift():在数组开头插入一个或多个元素 intarray_unshift(arrayarr,mixedvar[,mixed...])array_pad():用值将数组填补到指定长度 $a=array("Dog","Cat");print_r(array_pad($a,5,0));$a=array("Dog","Cat");print_r(array_pad($a,-5,0));

负号表示向左填补,正表示向右填补array_combine():通过合并两个数组来创建一个新数组array_diff():返回两个数组的差集数组array_intersect():计算数组的交集。。。数组元素定位当一个数组有很多元素时,使用数组遍历来求证某个值或键名是否存在,在速度和效率上有一定的损失。PHP提供了in_array()和array_key_exists()函数,可以快速从一个数组中取得某个值或键名是否存在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"; }数组元素定位数组的操作主要是针对键名或值,如果在不坏被访问数组的情况下可以单独把数组中键名或值提取来进行操作array_keys():返回一个数组中所有单元的键名array_values():返回数组中所有的值实例:<?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(): 删除数组中所有重复的值,返回一个由唯一值组成的数组示例:

$countrys=array("China","England","USA","Corlina","USA","England"); $uniqCons=array_unique($countrys); print_r($uniqCons);数组的遍历很多情况下我们都需要对数组进行遍历以获得各个键和值,PHP提供很多了很多函数来完成相应任务常用函数key() 返回数组中当前键名。

reset() 将array的内部指针倒回到第一个单元并返回第一个数组元素的值,如果数组为空则返回FALSE。each()

返回数组中当前的键/值对并将数组指针向前移动一步current()

返回数组中的当前单元的值end()

将数组的内部指针指向最后一个元素next()

将数组中的内部指针向前移动一位prev()

将数组的内部指针倒回一位数组遍历实例<?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)?>数组排序数据排序时计算机科学中的核心问题,PHP也提供了很多对数组的排序函数sort():函数按升序对给定数组的值排序。本函数为数组中的单元赋予新的键名。原有的键名将被删除。实例:<?php$my_array=array("a"=>"Dog","b"=>"Cat","c"=>"Horse");sort($my_array);print_r($my_array);?>输出:Array([0]=>Cat[1]=>Dog[2]=>Horse)数组排序rsort()

功能与s

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论