php数据类型

php数据类型

2016年5月29日

15:44

 

数据类型:具有相同特性的一类数据的统称。包括字符串、整型、浮点型、布尔型等。

 

标量数据类型:boolean 布尔型   integer 整型   float:浮点型  string: 字符串

 

复合数据类型:array  数组    object 对象   resource   资源   NULL  空型

 

1、数组: 一个能在单个变量中存储多个值的特殊变量。分为数值数组、关联数组和多维数组。其中多维数组:

 

 

创建数组的方式:1直接赋值;2使用array()函数;3使用range()函数创建一个指定元素数值的数组。

 

Range()建立一个包含指定范围元素的数组

Array range(mixed low,mixed high,[,number step])step被称为元素之间的步进值。

 

数组索引数组

$city = array("A","B","C","D");

 

 

关联数组

$citys = array('beijing'=>"北京",'shanghai'=>"上海");

Echo $citys["beijing"]

 

PHP除了支持数字索引外,还支持字符串索引,即关联数组。

 

表达式:程序中任何有值的部分。PHP中几乎所有内容都是表达式。

 

php中的每条语句都要以";"来结束。

 

 

exit://exit语句将使程序立即中断,不再向下执行。

 

遍历数组:

 

$cars = array("V","B","T");

$arrlength = count($cars);//其中count()是计数函数

 

For($x=0; $x<$arrlength;$x++)

{

Echo $cars[$x];

Echo"<br>";

}

 

 

2、遍历关联数组。遍历打印关联数组中的所有值 使用foreach循环

 

<?Php

$age = array("peter"=>"35","Joe"=>"43")

Foreach($age as $x=>$x_value)

{echo "key=".$xx" ",value=".$x_value;

}

 

 

List()和each遍历数组。

 

list()函数里面每项定义数组中对应的项。

 

each()函数返回的是当前键名/值和对接近下一个元素的内部指示器。如果确定要访问的时哪一个元素,可以直接引用 $item[key]或$item[value].

3、php数组排序

sort():对数组进行升序排序。

rsort():对数组进行降序排序。

asort():根据关联数组的值,对数组进行升序排序。

rsort():根据关联数组的键,对数组进行升序排序。

<?php

$cars=array("Volvo","BMW","Toyota");

sort($cars);

?>

 

来自 <http://www.runoob.com/php/php-arrays-sort.html>

 

 

 

 

 

管理数组:对数组元素进行增加以及删除、定位数组元素以及确定唯一性。

 

1、增加和删除数组元素。Array_push()函数。

$MyFriends  = array("aa","aa");

Array_push($MyFriends,"b")

 

Array_pop()函数。用于返回target_array的最后一个元素。并在结束后重置数组的指针。

 

 

还有array_shift()、array_unshift() 。在数组前面进行一些操作。

 

Unset():删除数组中的元素 unset($array[1]);删除数组中某个元素。

 

自定义函数删除 array_splice($array,$offset[指定要删除的元素],$length[指定要删除的长度])

 

 

Array_pad()函数的示例:

修改target数组,将其大小增加到length指定的长度。

 

 

定位数组元素。指用户通过一些函数有效筛选数组中的数据.

 

In_array()函数。用于检查数组中是否存在某个值。如果找到则返回true,否则返回false。

$ages = array(1,2,3,4,30);

If(in_array("4",$ages).

If(in_array(30,$ages,1); 最后一个是判定数据类型是否匹配。

Echo ("类型相同")。

 

 

Array_keys(): 该函数用于返回数组中所有的键名,也就是返回由一个数组target_array中所有键组成的数组。

Array_keys($array,"value");

 

 

随机排序:   shuffle()函数会为数组中 的元素赋予新的键名,并删除原来的键名而不仅是重新排序。

 

Bool shuffle(array,&array.)

 

反向排序:array_reverse():接受array数组作为输入并返回一个元素。

 

自定义排序:usort():自定义排序

Bool usort(array &array,callback cmp_function);

usort会为array中的元素赋予新的键名,这表示将删除原来的键而不仅是重新排序。

 

 

Array_rand():mixed array_rand(array input[,int num_req]) array_rand()接受input作为输入数组和一个可选的num_req参数,该参数指定程序员想要取出多个元素。

 

联合数组: 将两个数组联合起来,其中一个数组的值作为元素的键名,另一个数组的值作为元素的值。

Array array-combine(array keys,array values) 使用来自keys数组的值作为键名。来自value数组的值作为相应的值。

 

合并数组:1、使用+号进行合并;

2、使用array_merge()函数进行合并;

3、使用array_merge_recursive()函数进行合并。

 

对两个或多个数组合并时,键名和值都保持原样,是原封不动进行合并的。如果两个数组中的键名一样,以第一个数组中的值为主第二个数组中的值会自动忽略。

 

array_merge():用于合并一个或多个数组,一个数组中的值附加在一个数组的后面,并返回一个新的数组。

 

拆分数组

Array array_slice():返回根据offset和length参数所指定的array数组中的一段序列。

 

Array array_slice(array array ,int offset[,int length[,bool preserve keys]]).preserve默认重置数组的键,可以通过将其值设置为true改变其行为。如果offset为负,则序列将从array中距离末端这么远的地方开始。

 

替换数组

 array_splice()函数,可以把数组中的一部分去掉并用其他值代替。

 

Array_splicearray array_splice(array &input,int offset,[int length,[arrat replacement]])

 

判断数组的类型:判断数组是否属于关联数组或数字索引数组,is_array()该函数可以检测变量是否为数组,is_int()函数判断元素的键名是否为整型。从而判断数组是关联数组还是数字索引数组。

Count()函数能够获取所有的键名。Count():— 计算数组中的单元数目或对象中的属性个数

 

 

查找键是否存在:array_key_exists() :按照数组键名进行查找

 bool array_key_exists(mixed key,array search) key为指定的键名。

 

查找值是否存在: in_array():函数可以检查数组中是否存在某个值。

 

Bool in_array(mixed neddle,array haystack[,bool strict])当strict的值为true的时候,表示in_array()函数还会检查needle的类型是否和haystack相同。

 

去除重复元素值

 

当数组中出现重复的内容时,可以利用array_unique函数清理重复的值。

 

Array array_unique( array array):首先将值作为字符串排序,然后对每个值只保留第一个遇到的键名,接着忽略所有的键名。当字符串的元素内容一样时,第一个元素将会被保留。

 

数组键名和值调换:

Array_flip()函数:将使数组的键名与其值调换,即键名变成值,而值变成键名。

这个数组可以是数字索引数组,也可以是关联数组。

 

 

 

 

 

二维数组:二维数组本质上是以数组作为数组元素的数组。 A[m][n]是一个m行,n列的二维数组。

赋值方式:1 通过直接赋值 array[1][1]=""; array[1][2]="";

posted @ 2017-09-12 15:56  xiaogao2700c  阅读(132)  评论(0编辑  收藏  举报