设为首页 收藏本站
查看: 822|回复: 0

[经验分享] php 数组

[复制链接]

尚未签到

发表于 2015-8-25 12:29:27 | 显示全部楼层 |阅读模式
数组定义




  数组就是一个键值对组成的语言结构,键类似于酒店的房间号,值类似于酒店房间里存储的东西。
  如果你去某个酒店住店,服务员会告诉你房间号是多少,具体房间里有存储了什么,那就需要根据房间号进到房间里才知道了。
  下面的图能更清晰的说明啥是数组。
DSC0000.jpg
  知道数组后,是不是就很希望创建自己的数组了呢?
  $arr = array();表示创建一个空数组,并把创建的空数组赋值给变量$arr。
  

索引数组初始化




  PHP有两种数组:索引数组、关联数组。
  索引和关联两个词都是针对数组的键而言的。
  先介绍下索引数组,索引数组是指数组的键是整数的数组,并且键的整数顺序是从0开始,依次类推。
  下面使用图来说明一下:
DSC0001.jpg
  可以使用下面代码实现:
  $fruit = array("苹果","香蕉","菠萝"); 注意数组的键是从0开始的。可以使用print_r($fruit);语句输出数组键及对应的值。
  
  
  <?php
//创建一个索引数组,索引数组的键是“0”,值是“苹果”
$fruit=array("苹果","香蕉","菠萝");
print_r($fruit);
?>
  
  控制台输出:
  Array
(
[0] => 苹果
[1] => 香蕉
[2] => 菠萝
)
  
  

索引数组赋值




  索引数组赋值有三种方式:
  第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,索引数组中,中括号内的键一定是整数。比如,$arr[0]='苹果';
  
  第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,索引数组中,键一定是整数。比如,array('0'=>'苹果');
  
  第三种:用array()创建一个空数组,直接在数组里用英文的单引号'或者英文的双引号"赋值,数组会默认建立从0开始的整数的键。比如array('苹果');这个数组相当于array('0'=>'苹果');
  <?php
//请创建一个数组变量arr,并尝试创建一个索引数组,键是0,值是苹果
//第一种
$arr[0]='苹果';
//第二种
$arr = array('0'=>'苹果');
//第三种
$arr=array("苹果");
  if( isset($arr) ) {print_r($arr);}
?>
  
  输出:
  Array
(
[0] => 苹果
)
  
  

访问索引数组内容




  有的时候我们需要把数组中的内容也就是值取出来该怎么办呢?用数组变量的名字后跟的中括号中的键,来访问数组中的值。
  例如:

$fruit = array('苹果','香蕉');
$fruit0 = $fruit['0'];
print_r($fruit0);//结果为苹果
  上面代码的作用:先把一个数组$fruit第一个值取出来然后赋给一个变量$fruit0,最后输出变量值。
  
  <?php
//从数组变量$arr中,读取键为0的值
$arr = array('苹果','香蕉');
$fruit0=$arr["0"];
print_r($fruit0);
if( isset($arr0) ) {print_r($arr0);}
?>
  
  输出:
  苹果
  

for循环访问索引数组里的值




  for循环可以将数组里的所有值都访问到,下面我们展示下,用for循环访问索引数组里的值。
  例如:

$fruit=array('苹果','香蕉','菠萝');
for($i=0; $i<3; $i++){
echo '<br>数组第'.$i.'值是:'.$fruit[$i];
}

关联数组初始化




  回顾下前面介绍的内容,PHP有两种数组:索引数组、关联数组。
  索引和关联两个词都是针对数组的键而言的。
  先介绍下,关联数组是指数组的键是字符串的数组。
DSC0002.jpg
  可以使用下面代码实现:

$fruit = array(
'apple'=>"苹果",
'banana'=>"香蕉",
'pineapple'=>"菠萝"
);
  可以使用print_r($fruit);语句输出数组键及对应的值。

foreach循环访问索引数组里的值




  foreach循环可以将数组里的所有值都访问到,下面我们展示下,用foreach循环访问索引数组里的值。
  例如:

$fruit=array('苹果','香蕉','菠萝');
foreach($fruit as $k=>$v){
echo '<br>第'.$k.'值是:'.$v;
}


关联数组赋值




  关联数组赋值有两种方式:
  第一种:用数组变量的名字后面跟一个中括号的方式赋值,当然,关联数组中,中括号内的键一定是字符串。比如,$arr['apple']='苹果';
  
  第二种:用array()创建一个空数组,使用=>符号来分隔键和值,左侧表示键,右侧表示值。当然,关联数组中,键一定是字符串。比如,array('apple'=>'苹果');
  
  
  
  <?php
//请创建一个数组变量arr,并尝试创建一个关联数组,键是apple,值是苹果
//第一种
$arr['apple']='苹果';
//第二种
$arr = array('apple'=>'苹果');
if( isset($arr) ) {print_r($arr);}
?>
  
  输出:
  Array
(
[apple] => 苹果
)
  

访问关联数组内容




  用数组变量的名字后跟中括号+键的方式来访问数组中的值,键使用单引号或者双引号括起来。
  比如:

$fruit = array('apple'=>"苹果",'banana'=>"香蕉",'pineapple'=>"菠萝");
$fruit0 = $fruit['banana'];
print_r($fruit0);
  上面代码的作用:先把一个数组$fruit中键为banana字符串的值取出来然后赋给一个另一个变量$fruit0,最后输出变量值。
  

foreach循环访问关联数组里的值




  foreach循环可以将数组里的所有值都访问到,下面我们展示下,用foreach循环访问关联数组里的值。
  例如:

$fruit=array('apple'=>"苹果",'banana'=>"香蕉",'pineapple'=>"菠萝");
foreach($fruit as $k=>$v){
echo '<br>水果的英文键名:'.$k.',对应的值是:'.$v;
}

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-104022-1-1.html 上篇帖子: PHP小结 下篇帖子: ExtJs、PHP实现动态Ext.form.Checkbox
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表