在php中用三种数组分别是数值数组,关联数组,多维数组那么它们三种的用法有一点不同,下面我们来看看吧。
数值数组
数值数组存储的每个元素都带有一个数字 id 键。
可以使用不同的方法来创建数值数组:
例子 1
在这个例子中,会自动分配 id 键:
代码如下 复制代码
$names = array(peter,quagmire,joe);
例子 2
在这个例子中,我们人工分配的 id 键:
代码如下 复制代码
$names[0] = peter;
$names[1] = quagmire;
$names[2] = joe;可以在脚本中使用这些 id 键:
数组排序
(1)sort(array $array[,int sorttype])
array 表示一个数组
sorttype 取值: sort_regular - 默认。以它们原来的类型进行处理(不改变类型)。
sort_numeric - 把值作为数字来处理
sort_string - 把值作为字符串来处理
sort_locale_string - 把值作为字符串来处理,基于本地设置*。
(2)bool rsort(array $array[,sorttype])函数 逆向排序(值逆向)
sorttype 同上
(3)bool shuffle()函数 随机排序
(4)array array_reverse (array $array[,bool preserve_keys]) 反向排列
preserve_keys 为true时 保留原来的键名
(5)array array_merge()合并数组
(6)array array_slice(array $array,int offset[,int length[,boolpreserve_keys ])
offset非负,这array中的偏移变量从此开始,为负时从末端开始
length为正时,则表示序列中有很多单元,为负时表示从末端开始第几个数处结束,若省略则从offset开始一直到最后
boolpreserve_keys 同上数组循环输出
代码如下 复制代码
wo,'b'=>ni,'c'=>ta,'d'=>php,'e'=>mysql);
echo 使用foreach函数遍历数组;
echo
$nbsp;
;
foreach($shuzu as $key=>$value)
{
echo $key 代表: $value;
echo
$nbsp;
;
}
?>
关联数组
关联数组,它的每个 id 键都关联一个值。
在存储有关具体命名的值的数据时,使用数值数组不是最好的做法。
通过关联数组,我们可以把值作为键,并向它们赋值。
例子 1
在本例中,我们使用一个数组把年龄分配给不同的人:
代码如下 复制代码
$ages = array(peter=>32, quagmire=>30, joe=>34);
例子 2
本例与例子 1 相同,不过展示了另一种创建数组的方法:
代码如下 复制代码
$ages['peter'] = 32;
$ages['quagmire'] = 30;
$ages['joe'] = 34;可以在脚本中使用 id 键:
以上脚本的输出:
peter is 32 years old.
关联数组判断为空的代码,然后我们详细讲讲关于数据空的处理。
代码如下 复制代码
更多详细内容请查看:http://www.111cn.net/phper/php/39841.htm
遍历
遍历用户列表的时候,只需直接用 isset 查询那个用户名是否存在即可。
php 版代码:
代码如下 复制代码
$namem) {
if (isset($arrayhash[$namem])) {
// 本行执行了 m 次!
unset($arraym[$keym]);
}
}
return $arraym;
?>
多维
数组
在多维数组中,主数组中的每个元素也是一个数组。在子数组中的每个元素也可以是数组,以此类推。
例子 1
在本例中,我们创建了一个带有自动分配的 id 键的多维数组:
代码如下 复制代码
$families = array
(
griffin=>array
(
peter,
lois,
megan
),
quagmire=>array
(
glenn
),
brown=>array
(
cleveland,
loretta,
junior
)
);如果输出这个数组的话,应该类似这样:
array
(
[griffin] => array
(
[0] => peter
[1] => lois
[2] => megan
)
[quagmire] => array
(
[0] => glenn
)
[brown] => array
(
[0] => cleveland
[1] => loretta
[2] => junior
)
)
例子 2
让我们试着显示上面的数组中的一个单一的值:
代码如下 复制代码
echo is . $families['griffin'][2] .
a part of the griffin family?; 以上代码的输出:
is megan a part of the griffin family?
数组排序
代码如下 复制代码
20,name=>li);
$array[] = array(age=>21,name=>ai);
$array[] = array(age=>20,name=>ci);
$array[] = array(age=>22,name=>di);
foreach ($array as $key=>$value){
$age[$key] = $value['age'];
$name[$key] = $value['name'];
}
array_multisort($age,sort_numeric,sort_desc,$name,sort_string,sort_asc,$array);
print_r($array);
?>
更多array_multisort()可参考http://www.111cn.net/phper/php/42696.htm