foreach(PHP学习)
先来看一个例子:
$arr = array(0,1,2,3,4);让数组的每个值都变成原来的两倍,应该怎么来实现?
如果没有学习foreach之前,会想到用for循环
<?php $arr = array (0,1,2,3,4); for ( $i =0; $i <5; $i ++){ $arr [ $i ]= $arr [ $i ]*2; } print_r( $arr ); /* 返回: Array ( [0] => 0 [1] => 2 [2] => 4 [3] => 6 [4] => 8 ) */ ?> |
这种解决办法是键就是数字,并且是连续的情况下,才能这样用
如果键是字符串,又应该如何做呢?
例如:$arr = array('第一'=>0,'第二'=>1,'第三'=>2,'第四'=>3,'第五'=>4); 让他们的值变成原来的两倍
直接上代码
<?php $arr = array ( '第一' =>0, '第二' =>1, '第三' =>2, '第四' =>3, '第五' =>4); //这是键和值都出现的写法 foreach ( $arr as $key => $value ) { $arr [ $key ]= $value *2; } print_r( $arr ); /* 返回: Array ( [第一] => 0 [第二] => 2 [第三] => 4 [第四] => 6 [第五] => 8 ) */ /*如果求和的话,只要值就好了,不用键,那么可以这么写*/ /*可不可以只显示键,不要出现值,这是不可以的*/ ?> |
$sum=0;
//这是只出现值得写法
foreach ($arr as $value) {
$sum+=$value;
}
echo $sum;
//返回20
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 解答了困扰我五年的技术问题
· 为什么说在企业级应用开发中,后端往往是效率杀手?
· 用 C# 插值字符串处理器写一个 sscanf
· Java 中堆内存和栈内存上的数据分布和特点
· 开发中对象命名的一点思考
· PPT革命!DeepSeek+Kimi=N小时工作5分钟完成?
· What?废柴, 还在本地部署DeepSeek吗?Are you kidding?
· DeepSeek企业级部署实战指南:从服务器选型到Dify私有化落地
· 程序员转型AI:行业分析
· 重磅发布!DeepSeek 微调秘籍揭秘,一键解锁升级版全家桶,AI 玩家必备神器!