我们创建了数组,如何访问数组中的数据呢?
比如我要得倒索引为0或索引为phpfans的数据
/*********************************************
* PHPfans系列教程:
*
http://www.phpfans.net/bbs/forumdisplay.php?fid=25
* 作 者: 我不是鱼
* Email:
[email protected]
* 博 客: http://www.phpfans.net/space/?2
*********************************************/
示例:
<?php
$array = array('phpfans','php','MySQL','javascript','html','css');
$arr = array(
'phpfans' => 'www.phpfans.net',
'php' => 'www.php.net',
'mysql' => 'www.mysql.com',
'apache' => 'www.apache.org'
);
echo $array[0];
echo '<br>';
echo $arr['phpfans'];
?> ;
输出:
多维数组的也类似
示例:
<?php
$arr = array(0 => 'phpfans',1 => array('phpfans' => 'www.phpfans.net','php' => 'www.php.net'),2 => 'MySQL');
echo $arr[0];
echo '<br>';
echo $arr[1]['phpfans'];
?> ;
输出
注意的问题
应该始终在用字符串表示的数组索引上加上引号.例如用 $arr['phpfans'] 而不是 $arr[phpfans].可能在老的脚本中见过如下语法:
<?php
$arr['phpfans'] = 'www.phpfans.net';
echo $arr[phpfans];
?> ;
这样是错的,虽然php给出Notice信息,但可以运行.那么为什么错了呢?原因是此代码中有一个未定义的常量(phpfans)而不是字符串('phpfans'),它能运行,是因为 PHP 自动将裸字符串(没有引号的字符串且不对应于任何已知符号)转换成一个其值为该裸字符串的正常字符串.例如,如果没有常量定义为 phpfans,PHP 将把它替代为 'phpfans' 并使用之.看看下面的例子
示例:
<?php
error_reporting(E_ALL ^ E_NOTICE);//屏蔽Notice信息
$arr['phpfans'] = 'www.phpfans.net';
echo $arr[phpfans];//或者@$arr[phpfans]屏蔽Notice信息
?> ;
可以输出
示例:
<?php
//PHPfans站系列教程:
//http://www.phpfans.net/bbs/forumdisplay.php?fid=25
define('phpfans','mysql');//定义常量phpfans
$arr['phpfans'] = 'www.phpfans.net';
$arr['mysql'] = 'www.mysql.com';
echo $arr[phpfans];
?> ;
输出的却是