PHP数组创建和遍历(基础)
数组定义
PHP数组可以是混合数组 你的数组里面可以有数字也可以有字符串,二维数组不谈一个数组里还有数组跟C有差别定义方式例如 $dd=array(array(1,2,3),array(1,2,3,4),array(1,2,3,4,5))
$arr1=array(3,4,5)默认下标0 1 2 3
$arr2=arry("a"=>3,"b"=>22)关联数组下标为字符串
$arr3=arry("a"=>3,"b"=>22,5=>8,4)有指定下标也有 ,自动下标 此时 3的下标为aa 8的下标为5,4的下标为6(自动下标为最大数字下标加一)
$arr4[1]=3数组下标为1的值为3
数组取值
$v=$arr1[下标名字];
数组遍历
current($array)//获取数组的当前指针所在单元的值
key($array)//获取当前数组指针的下标
next($array)//移到数组的下一个节点获得其中的值
prev($array)//把数组指针移到最后一个单元然后取得该单元的值
end($array)//把数组下标直接移到最后一个
reset($array)//把数组下标直接移动到第一个
$count($array)//取得数组的长度
foreach ($数组名称 as $key=>$value)
{
echo " $key--$value"
}
如果下标都为整数0....100可以直接用for循环 ,如果有自定义下标用到next和for循环搭配
简单的for遍历
$ar=array(1,2,3,4,5,);
for ($i= 0;$i< count($ar); $i++)
{
$str= $ar[$i];
echo "$str";
}
next和for循环搭配
$ar=array(1,2,3,4,5,);
for ($i= 0;$i< count($ar); $i++)
{
$key=key($ar);
$val=current($ar);
echo "$val";
next($ar);
}
each()函数作用取得一个数组当前单元的下标和值放进一个数组,然后指针后移
list()用于一次性取得一个数组中从0开始的数组下标的多个单元的值 形式:list($变量1,$变量2,$变量3)
类似于
$变量1=$数组[0]
$变量2=$数组[1]
while() 和 list(),each()配合使用。
例如
$urls= array('aaa','bbb','ccc','ddd');
while(list($key,$val)= each($urls)) {
echo "This Site url is $val.<br />";
}
意思是用each取得数组第一个下标和值,用list存放其中的下标和值,其中list($key,$val)里面的变量只是为了起的名字容易理解跟key这个函数没关系
每次each调用之后指针自动向后移动-----因此组合可用-----平常也不用这个吧!
PHP数组创建和遍历(基础)的更多相关文章
- js:数组(创建、遍历、函数)
1.数组 采用单个变量只能存储一个数据,数组能够存储多个数据,获取方式也比较简单.它是将一组数据存储在当个变量下的存储方式. 2.数组的创建 (1)new方式创建,不指定数组长度 <script ...
- JavaScript基础&实战(5)js中的数组、forEach遍历、Date对象、Math、String对象
文章目录 1.工厂方法创建对象 1.1 代码块 1.2.测试结果 2.原型对象 2.1 代码 2.2 测试结果 3.toString 3.1 代码 3.2 测试结果 4.数组 4.1 代码 5.字面量 ...
- 集合 数组 定义 转换 遍历 Arrays API MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- JS实现图的创建和遍历
图分为无向图和有向图 图的存储结构有邻接矩阵.邻接表.十字链表.邻接多重表这四种,最常用的是前两种 本篇主要是利用邻接矩阵实现无向图的创建和遍历(深度优先.广度优先),深度优先其实就是二叉树里的前序遍 ...
- leadcode的Hot100系列--二叉树创建和遍历
很多题目涉及到二叉树,所以先把二叉树的一些基本的创建和遍历写一下,方便之后的本地代码调试. 为了方便,这里使用的数据为char类型数值,初始化数据使用一个数组. 因为这些东西比较简单,这里就不做过多详 ...
- Java自学-数组 创建数组
Java 如何创建一个数组 数组是一个固定长度的,包含了相同类型数据的 容器 步骤 1 : 声明数组 int[] a; 声明了一个数组变量. []表示该变量是一个数组 int 表示数组里的每一个元素都 ...
- C++ 创建和遍历二叉树
一个简单的创建和遍历二叉树的C++程序,二叉树的其他操作程序待更新. #include <iostream> using namespace std; struct BiTNode{ ch ...
- C语言 数组做函数参数不传数组个数的遍历方法
//数组做函数参数不传数组个数的遍历方法 #include<stdio.h> #include<stdlib.h> #include<string.h> void ...
- OpenJudge计算概论-二维数组右上左下遍历
/*====================================================================== 二维数组右上左下遍历 总时间限制: 1000ms 内存 ...
随机推荐
- MyBatis模糊查询异常: '%${}''读取jdbc属性
'%${}''总是传root, 后来发现${username}读取了jdbc里面的属性username,于是将jdbc属性名修改,成功
- day06 python 3中的编码
#python2 和 python3 的一些区别 ''' #python2 print('aaa') print'aaa' range() xrange()生成器 raw_input() #pytho ...
- Python学习笔记之基础篇(四)列表与元祖
#### 列表 li = ['alex','wusir','egon','女神','taibai'] ###增加的3种方法 ''' # append li.append('日天') li.append ...
- 【剑指Offer面试编程题】题目1390:矩形覆盖--九度OJ
题目描述: 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 输入: 输入可能包含多个测试样例,对于每个测试案例, 输入 ...
- Python—网络通信编程之udp通信编程
服务端代码 import socket # 1.创建实例,即数据报套接字 server = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # 2.绑 ...
- IOS TableView 用法
1.在视图上创建TableView( 拖控件),为ViewController创建UITableView属性(链接至TableView)和NSArray属性(存储数据) ViewController. ...
- Lesson 1 Finding fossil man
Why are legends handed down by storytellers useful? We can read of things that happend 5000 years ag ...
- k-近邻算法的优缺点及拓展思考
//2019.08.03晚#k-近邻算法的拓展思考与总结1.k-近邻算法是一种非常典型的分类监督学习算法,它可以解决多分类的问题:另外,它的整体思想简单,效果强大.它也可以用来解决回归问题,使用的库函 ...
- 本地连接 HDFS 报错 Exception in thread "main" org.apache.hadoop.security.AccessControlException: org.apache.hadoop.security.AccessControlException: Permission denied: user=JM.H,access=WRITE, inode="":r
此时 到hdfs机器下修改hdfs-site.xml即可 添加如下配置 <property> <name>dfs.permissions</name> <va ...
- Bar Chart _Study
---恢复内容开始--- 以“3D BarChart”为例. 1.Select a theme.(选择一个主题模板) 2.Set up categories and groups.(设置类型和组) 3 ...