PHP新手之学习数组声明
数组是在程序设计中,为了处理方便, 把具有相同类型的若干变量按有序的形式组织起来的一种形式。这些按序排列的同类数据元素的集合称为数组。下面介绍PHP中的数组声明。
一、数组的概述
1.数组的本质:管理和操作一组变量,成批处理
2.数组时复合类型(可以存储多个)
3.数组中可以存储任意长度的数据,也可以存储任意类型的数据
4.数组可以完成其他语言数据结构的功能(链表,队列,栈,集合类)
二、数组的分类
数组中有多个单元,(单元称为元素)
每个元素(下标[键]和值)
单访问元素的时候,都是通过下标(键)来访问元素
1.一维数组,二维数组,三维数组。。。多维数组 (数组的数组,就是在数组中存有其他的数组)
2.PHP中有两种数组
索引数组:就是下标是顺序整数的索引
关联数组:就是下标是字符串作为索引
下标(整数,字符串)只有这两种
三、数组多种声明方式
1.直接为数组元素赋值声明
如果索引下标不给出,就会从0开始顺序索引
如果给出索引下标,下一个就会从最大的开始增1
如果后面出现前面的下标,如果是赋值就是为前面的元素重新赋值
混合声明时,索引和关联不互相影响(不影响索引下标的声明)
2.使用array()函数声明
默认是索引数组,如果为关联数组和索引数组指定下标,使用 键=>值,多个成员之间使用" , "分割
3.使用其他的函数声明
(1)索引数组
$user[0]=1;//用户序号
$user[1]="zhangsan";//用户名
$user[2]=10;//年龄
$user[3]="nan";//性别
echo '<pre>';
print_r($user);
echo '</pre>';
(2)关联数组
<?php
$user["id"] = 1;
$user["name"] = "zhangsan";
$user["age"] = 10;
$user["sex"];
$user["age"] = 90; //赋值
echo $user["name"]; //输出
// 使用array()声明数组
$user = array(1, "zhangsan", 10, "nan");
// 使用array()声明关联数组
$user = array("id" => 1, "name" => "zhangsan", "age" => 10, "sex" => "nan");
// 声明多维数组(多条记录),来保存一个表中的多条用户信息记录
$user = array(
// 用$user[0]调用这一行,比如调用这条记录中的姓名,$user[0][1]
array(1, "zhangsan", 10, "nan"),
// 用$user[1]调用这一行,比如调用这条记录中的姓名,$user[1][1]
array(2, "lisi", 20, "nv")
);
// 数组保存多个表,每个表有多条记录
$info = array(
"user" => array(
array(1, "zhangsan", 10, "nan"),
array(2, "lisi", 20, "nv")
),
"score" => array(
array(1, 90, 80, 70),
array(2, 60, 40, 70)
)
);
echo $info["score"][1][1]; //输出60, ?>
PHP新手之学习数组声明的更多相关文章
- Java 数组声明与初始化
引言 学习了好久的java,每次要写数组的声明和初始化代码,总是理不清.最近又碰到了一次这种情况.这次拿出<Thinking In Java>好好总结一翻. 数组声明 对于数组的声明其实都 ...
- 新手如何学习java(java学习建议路线图)
怎么学习Java,这是很多新手经常会问我的问题,现在我简单描述下一个Java初学者到就业要学到的一些东西: 首先要明白Java体系设计到得三个方面:J2SE,J2EE,J2ME(KJAVA). ...
- c++学习-数组
int a[10]; //是个元素,在windows下回报错,linux会输出一个随机数 int a[10]={1,2}; //初始化,其他的为0 数组越界: 为了调高效率, 编译器不会对数组越界做检 ...
- Scala学习——数组/映射/元组
[<快学Scala>笔记] 数组 / 映射 / 元组 一.数组 1.定长数组 声明数组的两种形式: 声明指定长度的数组 val 数组名= new Array[类型](数组长度) 提供数组初 ...
- php数组声明、遍历、数组全局变量使用小结
数组的本质:管理和操作一组变量,成批处理,下面为大家介绍下数组的分类.数组的分类及使用说明,感兴趣的朋友可以了解下哈 php教程:数组声明,遍历,数组全局变量 <? /* * 一.数组的概 ...
- 新手如何学习Java——Java学习路线图
推荐初学者阅读:新手如何学习Java——Java学习路线图
- Java数组声明与拷贝的几种方式
Java数组声明的三种方式 第一种(声明并初始化): 数据类型[] 数组名={值,值,...}; 例:int[] a = {1,2,3,4,5,6,7,8}; ...
- 处理函数和数组声明[条款17]---《C++必知必会》
指向函数的指针声明和指向数组的指针声明容易混淆,原因在于函数和数组修饰符的优先级比指针修饰符的优先级高,因此通常需要使用圆括号. int *f1( );//一个返回值为 int* 的函数 int ( ...
- 第27天:js-表单获取焦点和数组声明遍历
一.表单 1.this指事件的调用者2.input.value 表单更换内容3.innerHTML更换盒子里的内容,文字.标签都能换.4.isNaN("12")如果里面的不是个数字 ...
随机推荐
- javascript 中arguments.callee 调用自身
一.Arguments该对象代表正在执行的函数和调用他的函数的参数.[function.]arguments[n]参数function :选项.当前正在执行的 Function 对象的名字.n :选项 ...
- 【floyd】 poj 2240
#include <iostream> #include <map> #include <string> #include <memory.h> usi ...
- 两种不同的重置样式方法(normalize.css)
重置样式非常多,凡是一个前端开发人员肯定有一个常用的重置CSS文件并知道如何使用它们.他们是盲目的在做还是知道为什么这么做呢?原因是不同的浏览器对一些元素有不同的默认样式,如果你不处理,在不同的浏览器 ...
- 实例:SSh结合Easyui实现Datagrid的分页显示
近日学习Easyui,发现非常好用,界面很美观.将学习的心得在此写下,这篇博客写SSh结合Easyui实现Datagrid的分页显示,其他的例如添加.修改.删除.批量删除等功能将在后面的博客一一写来. ...
- Popular Products
Popular Products 描述 Given N lists of customer purchase, your task is to find the products that appea ...
- Win7+QTP10.0+IE9无法启动IE的解决方法
请安装QTP补丁QTP_00626. 更多补丁请查阅:http://www.cnblogs.com/testware/archive/2010/10/13/1849985.html
- javascript中的原型继承
在Javascript面向对象编程中,原型继承不仅是一个重点也是一个不容易掌握的点.在本文中,我们将对Javascript中的原型继承进行一些探索. 基本形式 我们先来看下面一段代码: <cod ...
- achartengine画出动态折线图
achartengine画出动态折线图的效果最近有个项目需要用到实时曲线图,我也上网搜索了一下,最后还是选择使用achartengine这个现成的东西,毕竟自己再canvas一下实在是太麻烦,而且项目 ...
- java中instanceof的用法
java 中的instanceof 运算符是用来在运行时指出对象是否是特定类的一个实例.instanceof通过返回一个布尔值来指出,这个对象是否是这个特定类或者是它的子类的一个实例. 用法:resu ...
- 【poj解题】3664
简单,两次排序 #include <stdio.h> #include <stdlib.h> #include <string.h> #define MAX 500 ...