创建数组:
$products = array('a','b','c');
range(1,10); //1-10的数字数组
访问数组内容:
$products[0]; $products[3] = 'd'; //增加元素
循环访问:
for ($i = 0; $i < 3; $i++){ echo $products[$i]." "; } foreach ($products as $current){ echo $current. " "; }
关联索引:
$prices = array('a'=>100, 'b'=>10, 'c'=>4);
循环:
foreach ($prices as $key => $value) { echo $key." - ".$value."<br />"; }
or
while ($element = each($price)){ echo $element['key']; echo " - "; echo $element['value']; echo "<br />"; }
or
while (list($product, $price) = each($prices)){ echo "$product - $price<br />"; }
each() 将记录当前元素,使用reset()重置到开始处。
多维数组:
$products = array( array('a','a1',11), array('b','b2',12), array('c','c3',13));
数组排序:
sort() //字母顺序,大写在小写前面
asort() //关联数组,用元素值排序
ksort() //关联数组,用关键字排序
反向排序:
rsort() arsort() krsort()
对数组进行重新排序:
shuffle() //随机
array_reverse() //逆序
explode(separator, string); //分割字符串
在数组中浏览:
each() //返回当前元素,指针前移 next() //指针前移,返回新元素
current() //返回数组中的当前元素
reset() //返回第一个元素
end() //返回最后一个元素
prev() // 指针后移,返回新元素
对数组的每一个元素应用任何函数:
array_walk(array, func, [userdata]) //自定义函数,userdata作为参数传递给这个函数
统计数组元素个数:
count()
sizeof() //同上
array_count_values() //返回一个包含频率表的关联数组
将数组转换成标量变量:
extract()