有时我们需要在我们事先不知道维度时按需创建多维数组。假设我有以下代码,我想在' _'的存在下创建一个多维数组。在给定的字符串中。这个给定的字符串是$ table,我想从中构建一个多维数组。
$table='Customer_Contacts';
$fi='City';
$fv='New York';
$explodedTableName=explode('_', $table);
$tobeEvaluatedArray="\$association";
foreach($explodedTableName as $etn){
$tobeEvaluatedArray.="['$etn']";
}
$tobeEvaluatedArray.="['$fi']=$fv";
eval($tobeEvaluatedArray);
现在我想得到一个数组,即
$association['Customer']['Contacts']['City']='New York';
答案 0 :(得分:2)
我认为你想要这种动态。这应该工作,并给你一个自定义的想法:
$table = 'Customer_Contacts';
$keys = explode('_', $table);
$keys[] = 'City';
$value = 'New York';
$temp = &$result;
foreach($keys as $key) {
$temp =& $temp[$key];
}
$temp = $value;
print_r($result);