Chinaunix
标题:
关于数组的key和value
[打印本页]
作者:
imbiss
时间:
2007-05-16 07:41
标题:
关于数组的key和value
PHP的数组定义中$arr[key] = value; , key 可以使字符串或者是整数。
这样带来的问题如下
在一个循环中改变数组的值。
<?php
//错误的方法
$a = array();
$a["name"] ="james";
$a["fname"] = "bond";
for($i=0; $i<sizeof($a); $i++ ){
$a[$i] = "stephan"; //wrong! it will increase the array array!
if($i>10){
print_r($a);
//die("Error!");
//exit();
break;
}
}
print($a[0]);
?>
请告诉我,为什么我这样做是错的?
我的本意是把数组里面的所有元素(james, bond)都替换为"stefan"。
但是实际结果是,不停的在数组追加新的元素,导致数组不断变大。
最终出错。
后来我找到了正确的方法如下
难道我用变量,作为下标去访问数组中的某个元素是不可以的吗?
<?php
//正确的方法
$a = array();
$a["name"] ="james";
$a["fname"] = "bond";
foreach( $a as $key => $value){
$a[$key] = "steffan";
}
print_r($a);
?>
复制代码
难道就只能用foreach了吗?
参考
http://www.phpx.com/man/zh/language.types.array.html
作者:
seasee
时间:
2007-05-16 08:51
$a[$i]
$a[$key]
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2