首页 > 后端开发 > php教程 > [转]PHP数组

[转]PHP数组

WBOY
发布: 2016-06-23 14:34:38
原创
886 人浏览过

  我们学习的时间还不长,但有的会员已经迫不及待的想要实现很多网站功能,呵呵,有这样的要求和愿望很不错,这其实就是我们进步的动力。但是,作为一门编程语言,我们毕竟还是要掌握一些基本的规则,比如数据类型,语法等。好在PHP并不难,这些东西也不多,再学几课我们就可以开始利用它来实现一个一个网站功能了,到时候相信你会越来越有精神了。好,开始今天的课程。

  今天我们学习数组,数组是一种数据类型,它的使用频率相当高,学会处理数组会让你做网站时得心应手。举个例子:你的网站数据库里存有大里的文章,现在你想在一个页面上显示20条娱乐新闻的标题,这20条标题从数据库里取出来后你想用20个变量表示吗?我想你不会这么笨吧,那么用什么变量能完全接收这20条数据呢?这就要用到数组变量。

  什么是数组呢?数组实际上是一个数据集合,相当于是一个数据容器,很多数据存放在里面,我们可以按一定方法存进去或取出来,还可以对它里面的数据进行排序等各种操作,还可以检查里面有没有我们想要的数据等等。

  数组的定义:

  可以用 array() 语言结构来新建一个 array(数组)。它接受一定数量用逗号分隔的 key => value 参数对。例如8-1:


[复制到剪贴板]PHP代码:

$arr = array(1 => "新浪", 2 =>"网易", 3 => "腾讯", "雅虎");

?>

  数组里面的数据实际上是按一定顺序排列的,每个数据都有一个key对应,这个key(键值)由自己决定,如果你没有给出key,系统会按序列分配一个键值(key)。这里的 "雅虎"我们没有给出键值,但系统会分配给它一个键值4。

  既然系统能自动分配键值,可以不可以不写键值呢?当然可以,比如你可以这样写8-2:


[复制到剪贴板]PHP代码:

$arr = array( "新浪", "网易", "腾讯", "雅虎");

?>

  这里要注意:系统分配键值(key)是从0开始的,你知道"新浪"的键值是什么吗?


  如何访问数组数据:


  上面那么多数据我们都用变量$arr表示了,要从中取出我们想要的数据应该怎么做呢?例如取出8-1例中的数据这么做8-3:


[复制到剪贴板]PHP代码:

$arr = array(1 => "新浪", 2 =>"网易", 3 => "腾讯", "雅虎");

echo $arr[1];   //这个会输出“新浪”
echo $arr[2];   //这个会输出“网易”
echo $arr[3];   //这个会输出“腾讯”
echo $arr[4];   //这个会输出“雅虎”

?>

  就是用变量名加上中括号内不同的key访问不同的数据。中括号内的key我们也叫它下标。要得到8-2中的“新浪”应该怎么做?对了用$arr[0]。


  用字符串作键名:

  上面我们讲到的key(键值,键名)都是整数,PHP中规定,作为键名的只有两种:整数(integer)和字符串(string),那么用字符串作键名应该怎么做又如何访问其值呢?例如8-4:


[复制到剪贴板]PHP代码:

$arr = array("a" => "新浪", "b"=>"网易", "c" => "腾讯", "雅虎");

echo $arr['a'];   //这个会输出“新浪”
echo $arr['b'];   //这个会输出“网易”
echo $arr['c'];   //这个会输出“腾讯”
echo $arr[0];   //这个会输出“雅虎”

?>

  前面我们讲过,定义字符串要用引号,所以访问数组数据时中括号内的键名一定要用引号。

  用方括号的语法新建/修改:

  如果我们要添加一个数据或修改一个数据要怎么做呢?你可以通过明示地设定值来改变一个现有的数组。这是通过在方括号内指定键名来给数组赋值实现的。也可以省略键名,在这种情况下给变量名加上一对空的方括号(“[]”)。如8-5:


[复制到剪贴板]PHP代码:

$arr = array("a" => "新浪", "b"=>"网易", "c" => "腾讯", "雅虎");

$arr['a'] = "PHP中文社区";
$arr['e'] = "新浪";
$arr[]      = "百度";

echo $arr['a'];   //这个会输出“PHP中文社区”
echo $arr['b'];   //这个会输出“网易”
echo $arr['c'];   //这个会输出“腾讯”
echo $arr['e'];   //这个会输出“新浪”
echo $arr[0];   //这个会输出“雅虎”
echo $arr[1];   //这个会输出“百度”

?>

 

引用地址:http://hi.baidu.com/cnwrol/blog/item/2cbed062599aa8dee6113a4b.html

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板