我需要检查是否存在“ CodProduto”,所以我做了:
foreach ($movimentos['CodProduto'] as $value){}
它将运行所有CodProduto,如果存在,则需要在foreach内执行if检查2个其他字段:
if (!$movimentos['Percentagem'] && !$movimentos['Valor'] {...}
我的问题是我不知道如何访问$movimentos['Percentagem']
和!movimentos['Valor']
项目/索引或子索引,我不知道如何调用它。
$ movimentos ['Valor']是一个数组,我不知道如何在检查$ movimentos ['Percentagem']
的同时检查他的项目答案 0 :(得分:0)
尝试一下:
read
答案 1 :(得分:0)
foreach
允许您指定变量以获取索引:
foreach ($movimentos['CodProduto'] as $index => $value) {
if (!$movimentos['Percentagem'][$index] && !$movimentos['Valor'][$index]) {...}
}
但是,如果将所有相关数据放在单个数组中,而不是放在单独的数组中,通常会更容易。所以代替
$movimentos = [
"CodProduto" => [...],
"Percentagem" => [...],
"Valor" => [...],
"ProdutoDesignaceo" => [...]
];
这样做:
$movimentos = [
["CodProduto" => 1, "Percentagem" => 1, "Valor" => 2, "ProdutoDesignaceo" => "..."],
["CodProduto" => 2, "Percentagem" => 3, "Valor" => 4, "ProdutoDesignaceo" => "..."],
...
];
然后您的循环将是:
foreach ($movimentos as $m) {
if (!$m['Percentagem'] && !$m['Valor']) {...}
}
答案 2 :(得分:0)
您可以遍历项目并获取每个项目的索引。
在迭代CodProduto子数组时,使用此索引(delegate
)访问其他数组中的值。
$i