我有这样的数组:$test = array(20, 30, 40);
我想使用这些值设置多维数组:$example[20][30][40] = 'string'
我该怎么做?
注意:“20,30,40”只是一个例子,我的程序会打印一些整数,我想用这些值设置一个多维数组,它可以超过3个值。
答案 0 :(得分:1)
你可以这样做:
$example[$test[0]][$test[1]][$test[2]] = 'string'
或者,如果数组的大小是可变的,则需要执行递归函数来填充数组。
function fill_up($content, $value){
$index = array_shift($content);
if(count($content)){
return array($index => fill_up($content, $value));
} else {
return array($index => $value);
}
}
$example = array(20,30,40);
$value = 'test';
var_dump(fill_up($example, $value));
答案 1 :(得分:0)
您可以简单地写一下:
$example[19][29][39] = 'string'
不要忘记第一个元素是0而不是1.这应该有用。
答案 2 :(得分:0)
看这里:
http://php.net/manual/en/language.types.array.php
实施例:
$arr = array("foo" => "bar", 12 => true);
echo $arr["foo"]; // bar
echo $arr[12]; // 1
说明:
PHP中的数组实际上是一个有序的映射。地图是一种关联的类型 键的值。此类型针对多种不同用途进行了优化;有可能 被视为数组,列表(向量),哈希表(一个实现的 地图),字典,集合,堆栈,队列,可能还有更多。作为数组 值可以是其他数组,树和多维数组也是 可能的。
这可以扩展到n维。它相当于数组中的数组:
2-D阵列示例:
$arr = array("somearray" => array(6 => 5, 13 => 9, "a" => 42));
echo $arr["somearray"][6]; // 5
echo $arr["somearray"][13]; // 9
echo $arr["somearray"]["a"]; // 42
'希望有所帮助!
答案 3 :(得分:0)
当14mo似乎已经到了,你不能在PHP中创建一个空数组。这不是一个阵列。这是一张地图。你当然可以使用那些输入值制作一个荒谬的多维地图,但这似乎......完全没用。
答案 4 :(得分:0)
<?php
$example = array();
$test = array(20, 30, 40);
foreach($test as $key=>$value)
{
$example[$value] = $test;
}
print_r($example);exit;
?>