我有一个困难的时间创建一个相关的数组和分配值的关键。我有两个数组(tech_pay和tech_scans),我正在使用它们的值做一个简单的计算,我想创建一个名为tech_per_scan的新数组,但我一直得到一个数组,键从0开始自动创建。
$tech_per_scan = array();
foreach($tech_pay as $key=>$value)
{
$pay_per_scan = $tech_pay[$key]['tot_pay']/$tech_scans[$key]['scans'];//calculate the payment per scan
$tech_per_scan[] = array('id'=>$key,'pay_per_scan'=>$pay_per_scan);
}
这行$tech_per_scan[] = array('id'=>$key,'pay_per_scan'=>$pay_per_scan);
将向您的数组添加一个元素,并且它将以0作为索引开始,因为您没有指定它的键。类似于array_push
应该是$tech_per_scan[$id]
$tech_per_scan[$id] = $pay_per_scan;
你应该像这样设置新数组的值:
$tech_per_scan[$key] = $pay_per_scan ;
完整代码为:
$tech_per_scan = array();
foreach($tech_pay as $key=>$value)
{
$pay_per_scan = $tech_pay[$key]['tot_pay']/$tech_scans[$key]['scans'];//calculate the payment per scan
$tech_per_scan[$key] = $pay_per_scan ;
}