Rumah  >  Artikel  >  php数组详解

php数组详解

无忌哥哥
无忌哥哥asal
2018-06-28 09:42:141878semak imbas

* 数组是键名与值的有序集合

 * 1.分类:

 * [键名]

 *   1.1 索引数组[默认]: 键名是整数[如果不是会自动转换]

 *   1.2 关联数组: 键名是字符串[与对象属性可相互转换]

 * [键值是否为数组?]

 *   1.1一维数组: 键值为非数组类型,最常用

 *   1.1多维数组: 键值仍然是数组,使用最多的是二维数组,不推荐嵌套过深

 *  2.创建:

 *   2.1统一创建:$arr = [element1,element2,...];

 *   2.2逐个创建:$arr=[];$arr[]=element1;$arr[]=element2,...

 * 3.访问:中括号加键名[key]

 *   3.1整体: print_r($arr); var_dump($arr);

 *   3.3逐个: echo $array[key]: $array['name'];

 * 4.更新:

 *   4.1整体:需要通过循环遍历实现: foreach($arr as $value){//...};

 *   4.2逐个:$arr[key] = new_value;

 *   4.3清空或重建: $arr=[];  $arr = [1,2,3...];再次用原名称重新声明会覆盖原数组

 * 5.删除:

 *   5.1整体: unset($arr);

 *   5.2单个删除键名不重排: unset($arr[key]);

 *   5.3单个删除键名重排[针对索引数组]: array_splice($arr,$start,$count,[$newEle]);

 *   5.4删除空值元素: array_filter($arr);

 *   5.5删除特定元素: foreach +if + unset

//1.创建

$city = ['合肥','上海','杭州','南京']; //索引数组
$user = ['id'=>10,'name'=>'Peter','course'=>'php','grade'=>99]; //关联数组

//2.访问

print_r($user);  //整体输出
echo &#39;<hr>&#39;;
echo $user[&#39;name&#39;];  //查看单个元素
echo &#39;<hr>&#39;;

//3.更新

$user[&#39;name&#39;]=&#39;朱老师&#39;; //更新操作
echo $user[&#39;name&#39;];  //再次查看

//4.删除

unset($city);  //删除整个数组
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($city); //查看不存在的变量会报错,加@符可忽略Notice级错误
echo &#39;<hr>&#39;;
unset($user[&#39;course&#39;]);  //删除单个元素
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($user);  //整体输出, $user[&#39;course&#39;]元素已经不存在了
echo &#39;<hr>&#39;;
$city = [&#39;合肥&#39;,&#39;上海&#39;,&#39;杭州&#39;,&#39;南京&#39;]; //索引数组
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
print_r($city);  //原始索引数组
echo &#39;<hr>&#39;;
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
//array_splice(arr,start,end,preserve):从数组特定位置取出指定数量的元素
//返回取出的数据,取出的数据从原始数组中删除掉
//从$city的第二个元素开始,取出2个并返回它们
print_r(array_splice($city,1,2)); 
echo &#39;<pre class="brush:php;toolbar:false">&#39;;
//再次查看,会发现取出的元素,已经从原始数组中消失了
print_r($city);  //整体输出
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:php常量的声明,赋值与输出Artikel seterusnya:php条件判断与多分支