A. php数组:什么是数组
分为这几类
1、添加数组元素
PHP是一种弱类型语言,这意味着你不需要显示声明一个数组及其大小,相反,你可以同时声明并填充数组。
$capitals = array(
'Alabama' => 'Montgomery',
'Alaska' =>
'Juneau',
'Arizona' => 'Phoenix'
); 额外的数组元素可以象下面这样追加:
$capitals['Arkansas'] = 'Little Rock';
如果你正在处理数字索引数组,你可能想使用显示命名的函数前置和追加元素,如array_push()和array_unshift()函数,但这些函数不能操作关联数组。
2、删除数组元素
如果要从数组中删除一个元素,请使用unset()函数,如:
unset($capitals['California']);
使用数字索引数组时,删除数组元素的办法更多,更灵活,可以使用array_shift()和array_pop()函数分别从数组的开头和末尾删除一个元素。
3、交换键和值
假设你想创建一个名叫$states的新数组,使用州府作为索引,使用州名作为关联值,使用array_flip()函数很容易完成这个任务。
B. php从数组中随机取几个元素组成新的数组
1、
$a = array(1,2,3,4,5,6,7,8,9,10);
$b = array_rand($a,5);
foreach($b as $k=>$v){
$arr[]=$a[$v];
}
print_r($arr);
2、
$arr=$a;
shuffle($arr);
$arr=array_slice($arr,0,5);
print_r($arr);
C. php 里面怎么获取数组里面的数组的值
$arr=array("PHP","java","C++");
var_mp($arr);
//获取数组中元素的值如下:
foreach($arras$key=>$value{
echo$value;//输出即可
}
浏览器下看到的如下:
array (size=3)
0 => string 'PHP' (length=3)
1 => string 'java' (length=4)
2 => string 'C++' (length=3)
获取的结果
PHPjavaC++
D. php 如何定义一个数组
php中定义数组的方法:x0dx0ax0dx0a1、PHP定义数组的格式:x0dx0a数组名=array();x0dx0a如:$aa=array();//这样就定义了一个数组,x0dx0a之后给元素赋值:x0dx0a$aa[0]="9016";x0dx0a$aa[1]="9017";x0dx0a$aa[2]="9018";x0dx0ax0dx0a2、PHP输出数组的方法:x0dx0aforeach($aa as $val)x0dx0a{x0dx0aecho$val;x0dx0a}x0dx0a也可以在定义数组时直接赋值x0dx0a$aa=array(0=>"9016",1=>"9017";2=>"9018");x0dx0ax0dx0a3、PHP的数组还可以用字符做下标,不一定要数字:x0dx0a$aa["name"]="Joan";x0dx0a$aa["num"]="9018";x0dx0a$aa["email"]="[email protected]";x0dx0a也可以这样x0dx0a$aa=array("name"=>"joan","num"=>"9018","email"=>"[email protected]");x0dx0a将一个一维数组的元素也定义为数组,就是一个二维数组,x0dx0a$aa=array(0=>"a1",1=>"a2");x0dx0a$bb=array(0=>"b1",1=>"b2");x0dx0a$cc=array(0=>$aa;1=>$bb);此时,$cc[0]也是一个数组,$cc[1]也是一个数组,$cc就是一个二维数组。x0dx0a同理,三维,四维数组也可以继续定义下去。x0dx0ax0dx0a4、数组的元素不仅于数字和字符串,可以是类的对象。
E. php中使用的数组的目的是什么
php是门弱类型语言,其数组就是这门语言的一大特色
1. 目的:将多个互相关联的数据,组织在一起形成一个集合,作为一个单元使用
2. php中的数组变量可以存储任意多个,任意类型的数据
3. 本质:存储,管理和造作一组变量
F. PHP中的常用数组操作方法有哪些
PHP中的常用数组操作方法(每种都给你举个2个例子)
一、数组操作的基本函数
数组的键名和值
array_values($arr); 获得数组的值
array_keys($arr);获得数组的键名
数组的内部指针
current($arr); 返回数组中的当前单元
pos($arr); 返回数组中的当前单元
数组和变量之间的转换
extract($arr);用于把数组中的元素转换成变量导入到当前文件中,键名当作变量名,值作为变量值
注:(第二个参数很重要,可以看手册使用)使用方法
echo$a;compact(var1,var2,var3);用给定的变量名创建一个数组
二、数组的分段和填充
数组的分段
array_slice($arr,0,3); 可以将数组中的一段取出,此函数忽略键名
array_splice($arr,0,3,array("black","maroon")); 可以将数组中的一段取出,与上个函数不同在于返回的序列从原数组中删除
分割多个数组
array_chunk($arr,3,TRUE); 可以将一个数组分割成多个,TRUE为保留原数组的键名
数组的填充
array_pad($arr,5,'x'); 将一个数组填补到制定长度
三、数组与栈
array_push($arr,"apple","pear"); 将一个或多个元素压入数组栈的末尾(入栈),返回入栈元素的个数
array_pop($arr); 将数组栈的最后一个元素弹出(出栈)
四、数组与列队
array_shift($arr);数组中的第一个元素移出并作为结果返回(数组长度减1,其他元素向前移动一位,数字键名改为从零技术,文字键名不变)
array_unshift($arr,"a",array(1,2));在数组的开头插入一个或多个元素
五、回调函数
array_walk($arr,'function','words'); 使用用户函数对数组中的每个成员进行处理(第三个参数传递给回调函数function)
array_mpa("function",$arr1,$arr2); 可以处理多个数组(当使用两个或更多数组时,他们的长度应该相同)
六、数组的排序
通过元素值对数组排序
sort($arr); 由小到大的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
rsort($arr); 由大到小的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
通过键名对数组排序
ksort($arr); 按照键名正序排序
krsort($arr); 按照键名逆序排序
七、数组的计算
数组元素的求和
array_sum($arr); 对数组内部的所有元素做求和运算
数组的合并
array_merge($arr1,$arr2); 合并两个或多个数组(相同的字符串键名,后面的覆盖前面的,相同的数字键名,后面的不会做覆盖操作,而是附加到后面)
“+”$arr1+$arr2; 对于相同的键名只保留后一个
数组的差集
array_diff($arr1,$arr2); 返回差集结果数组
array_diff_assoc($arr1,$arr2,$arr3); 返回差集结果数组,键名也做比较
数组的交集
array_intersect($arr1,$arr2); 返回交集结果数组
array_intersect_assoc($arr1,$arr2); 返回交集结果数组,键名也做比较
八、其他的数组函数
range(0,12); 创建一个包含指定范围单元的数组
array_unique($arr); 移除数组中重复的值,新的数组中会保留原始的键名
G. php数组的基本语法 : PHP 数组
数组
php 中的数组实际上是一个有序图。图是一种把 values 映射到 keys 的类型。此类型在很多方面做了优化,因此可以把它当成真正的数组来使用,或列表(矢量),散列表(是图的一种实现),字典,集合,栈,队列以及更多可能性。因为可以用另一个 php 数组作为值,也可以很容易地模拟树。
解释这些结构超出了本手册的范围,但对于每种结构至少会发现一个例子。要得到这些结构的更多信息,建议参考有关此广阔主题的外部着作。