我正在尝试使用php创建一个关联数组。我想要的输出是
Array
(
[key] => fl_0_sq
),
Array
(
[key] => fl_1_sq
)
代码是
$max_val = 2;
for($i=0; $i<$max_val; $i++)
{
$flr_arr .= "array('key' => 'fl_".$i."_sq'),";
}
print_r($flr_arr);
输出
array('key' => 'fl_0_sq'),array('key' => 'fl_1_sq'),
现在的问题是它已成为字符串而不是数组。是否可以创建一个类似于所需输出的数组结构。任何帮助都非常感谢。
答案 0 :(得分:1)
你可以这样做:
<?php
$flr_arr = [];
$max_val = 2;
for ($i = 0; $i < $max_val; $i++) {
$flr_arr[][key] = 'fl_' . $i . '_sq';
}
$output = "<pre>";
foreach ($flr_arr as $i => $flr_arr_item) {
$output .= print_r($flr_arr_item, true);
if($i < count($flr_arr)-1){
$output = substr($output, 0, -1) . ",\n";
}
}
$output .= "</pre>";
echo $output;
输出:
Array ( [key] => fl_0_sq ), Array ( [key] => fl_1_sq )
答案 1 :(得分:0)
我不确定你想做什么,但你的输出可以通过以下方式完成:
$max_val = 2;
for($i=0; $i<$max_val; $i++)
{
$flr_arr = [];
$flr_arr['key'] = 'fl_".$i."_sq';
print_r($flr_arr);
}
答案 2 :(得分:0)
您正在声明一个字符串并将其连接起来。您想要向数组添加元素。您也无法创建具有相同名称的多个阵列。你能做什么,虽然是2D阵列:
$flr_arr[] = array("key"=>"fl_$i_sq");
注意array()周围缺少引号。 “[]”语法将新元素添加到数组的末尾。输出将是 -
array(array('key' => 'fl_0_sq'),array('key' => 'fl_1_sq'))