[英]Building an associative array using for loop in php
我正在嘗試使用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'),
現在的問題是它已變成字符串而不是數組。 是否有可能創建類似於所需輸出的數組結構。 非常感謝您的幫助。
您可以這樣做:
<?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 )
我不確定您要做什么,但是您的輸出可以通過以下方式完成:
$max_val = 2;
for($i=0; $i<$max_val; $i++)
{
$flr_arr = [];
$flr_arr['key'] = 'fl_".$i."_sq';
print_r($flr_arr);
}
您正在聲明一個字符串並將其串聯。 您要向數組添加元素。 您也不能創建多個具有相同名稱的數組。 您可以做的是2D數組:
$flr_arr[] = array("key"=>"fl_$i_sq");
請注意,array()周圍沒有引號。 “ []”語法在數組的末尾添加了一個新元素。 輸出將是-
array(array('key' => 'fl_0_sq'),array('key' => 'fl_1_sq'))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.