我有三个不同的数组。如果找到匹配项,则从第一个数组获取值并在第二个数组中进行测量,将数据输入新数组,第一个数组为类型,第二个数组为结果,第三个数组为< strong>数据。当我使用 @Override
public void configure(HttpSecurity http) throws Exception {
http
.headers().frameOptions().disable()
.and()
.authorizeRequests()
.antMatchers("/app/profile-info").permitAll()
.antMatchers("/app/**").authenticated()
.antMatchers("/management/health").permitAll();
}
时会发生问题,它会引发通知错误
注意未定义索引:第28行的价格
如果我以$data[$types[$i]]['price'] += $result[$x]['price'];
这会生成新的索引数组,但不会加上价格,也不会显示通知。
问题是,如果它不接受价格作为索引,那么为什么要接受$data[$types[$i]][] = $result[$x]['price'];
名称作为其前一行的索引。而且我想加上所有价格并将其分配给键 price ,当然也希望摆脱关注。
$data_array[$types[$i]]['name']
我在上面的文字中提到的索引数组
$types[] = "class";
$types[] = "late_fine";
$types[] = "exam_fees";
$result[] = array("name"=>"class 1", "type" => "class", "price" => 10 );
$result[] = array("name"=>"class 1", "type" => "class", "price" => 20 );
$result[] = array("name"=>"late fine", "type" => "late_fine", "price" => 50 );
$result[] = array("name"=>"late fine", "type" => "late_fine", "price" => 40 );
$i=0;
$x=0;
while($i < count($types)){
while($x < count($result)){
if($types[$i] == $result[$x]['type']){
$data[$types[$i]]['name'] = $result[$x]['name'];
$data[$types[$i]]['price'] += $result[$x]['price'];
}
$x++;
}
$x = 0;
$i++;
}
echo "<pre>";
print_r($data);
我期望没有通知的结果
Array
(
[class] => Array
(
[name] => class 1
[0] => 10
[1] => 10
[2] => 10
)
)