跨境电商
经验交流分享

PHP数组详解一

定义数组:

[PHP]

$a = array(“one” => “string, 1 => “another”);

echo $a[‘one’]; //string

echo $a[1];//another

[/PHP]

可以用 array() 语言结构来新建一个 array。它接受任意数量用逗号分隔的 键(key) => 值(value) 对。

其中对key的要求是:只能是字符串或者整形。对value没有任何要求,可以是任何值。其中键值如果是浮点数的话,则向零取整。

如果对给出的值没有指定键名,1,如果此时没有数字键,则取0为键;2,如果此时有数字键,则取当前最大的整数索引值加一作为键。3,如果此时数字键为负值,则取o为当前键;如果指定的键名已经有了值,则该值会被覆盖。使用 TRUE 作为键名将使 integer 1 成为键名。使用 FALSE 作为键名将使 integer 0 成为键名。

[PHP]

$a = array(“one” => “string”, “b” => “another”, 4, 5, 1);//这个情况会生成0,1,2三个键

$b = array(“one” => “string”, -9 => “juststring”, 4,5,1);//这个情况也会生成0,1,2三个键

$c = array(“one” => “string”, 3 => 9, 4, 5, 1);//这个情况会生成4,5,6三个键

[/PHP]

定义数组的第二种方法是直接使用方括号直接赋值,键的规律和上述相同。如果要删除一对键/值,使用unset()函数。其参数为数组键。

[PHP]

$arr = (5 => 1,  12 => 3);

$arr[] = 9;//此键为13,即当前最大的整数加一

unset($arr[5]);

unset($arr);//这会删除整个数组

[/PHP]

这里会牵涉到最大数字键实际上已经不存在于当前数组的情况,也同时和unset()函数用法有关。

[PHP]

$arr = array(1,2,3,4,5);

print_r($arr);

//使用unset只会销毁数组的值,但是并不会重置数组的索引,即销毁值的索引依然存在。

foreach ($arr as $key => $value) {

unset($key);

}

print_r($arr);

//所以下边给数组赋值的话,依然是从5开始,而不是0

$arr[] = “the key value is 5 not 0”;

print_r($arr);

//如果想即销毁数组,又重置数组的话,使用array_values()函数。

//array_values()并非真正意义上重置数组,而是返回重新通过数字索引的数组值。

$arr = array_values($arr);

$arr[] = 7;

print_r($arr);

[/PHP]

赞(0)
未经允许不得转载:锐想 » PHP数组详解一
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

锐想电商 - 跨境电商经验交流分享

锐想无限