博主信息
博文 37
粉丝 0
评论 0
访问量 39332
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
数组的分类创建与遍历,数组与变量和字符串之间的转换,常用数组元素的回调处理--2018年8月27日11时15分
新竹网络_Terry的博客
原创
979人浏览过

这一节课主要讲的是数组的相关知识,数组的定义,数组的创建,以及一些常用的数组函数

代码


实例

<?php
//数组与变量字符串之间的转换
//list() 把数组中的元素转为变量: 用在索引数组上
list($name,$skill,$postion)=['杨康','九阴白骨爪','金国小王爷'];
echo $name.'的技能是'.$skill.'是'.$postion.'<hr>';
//extract($arr, $flag): 关联数组转为变量
$arr=['id'=>1,'name'=>'郭靖','postion'=>'金刀驸马'];
echo '共生成',var_export(extract($arr),true),'个变量';
echo '我的id是',$id,'姓名',$name,'职位',$postion;
//compact(): 将变量转为关联数组
$name='陈近南';
$faction='天地会';
$postion='总舵主';
$arr1=compact('name','faction','postion');
echo var_export($arr1,true).'<hr>';
//explode():将字符串转换数组
$name='东邪,西毒,南帝,北丐';
echo var_export(explode(',',$name)).'<br>';
echo var_export(explode(',',$name,2)).'<br>';
echo var_export(explode(',',$name,-1)).'<hr>';
//implode($glue, $arr)
$arr2=['首页','公司新闻','联系我们'];
echo var_export(implode($arr2),true).'<br>';
echo var_export(implode('|',$arr2),true);
?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

预览图

QT6%KHX{F8VA$5A@R6FR~GN.png

代码


实例

<?php
//数组元素回调处理
//array_filter():回调处理数组中的每个元素的值,仅返回结果为true的元素
$arr=[5,10,'',null,23,false,'css'];
echo '原始数组',var_export($arr,true),',共有:',count($arr),'个元素<hr>';
$arr1=array_filter($arr);
echo '新数组',var_export($arr1,true),',共有:',count($arr1),'个元素<hr>';
//传入一个回调: 匿名函数
$arr2=['html','css','javascript'];
$arr3=array_filter($arr2,function ($value){
   return $value !== 'css';
});
echo var_export($arr3).'<hr>';
//array_walk():对数组中每个元素的键和值进行处理
$arr4=['name'=>'admin','password'=>'123'];
echo var_export($arr4).'<hr>';
array_walk($arr4,function (&$value,$key){
   echo $key,':',$value,'<br>';
});
array_walk($arr4,function (&$value,$key,$name){
    if($value != $name){
       exit ('无权查看');
    }else{
        exit($key.':'.$value);
    }
},'admin1');
?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

预览图

69LL3F~D[B7WD{5%713VTSQ.png

代码


实例

<?php
//for()循环来遍历关联数组
$arr=array('a'=>'aaa', 'b'=>'bbb', 'c'=>'ccc', 'd'=>'ddd', 'e'=>'eee');
for($i=0;$i<count($arr);$i++){
    echo $arr[$i].' ';
};
for循环的时候是按照数字递增的,for只能访问键为数字的数组,而关联数组的键值是字符,所以for循环不能遍历关联数组

运行实例 »

点击 "运行实例" 按钮查看在线实例

预览图

12WGMGX]N8}3`ZM`(DF6RQ0.png

总结

1、for循环只能遍历索引数组,不能遍历关联数组

2、数组分为:索引数组和关联数组

3、数组与字符串和变量之间的互相转换,list() 把数组中的元素转为变量: 用在索引数组上,extract(): 关联数组转为变量,compact(): 将变量转为关联数组,explode():将字符串转换数组,implode()




批改状态:合格

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学