PHP Foreach 循环 - 在另一个数组中搜索一个数组的值,如果存在则进行数学运算
PHP Foreach loop - Search values of an array in a different array and do math if exists
我有一个 MySQL 数据库,其中 table 在 AppliedNo
列中有两个不同的值。 AppliedNo
A1 id
的值是 1,2,15,92,132
,A2 id
是 2,99,120,132,313
。我的目标是编写一段 PHP 代码,可以评估 A1 中每个 A2 成员的存在,然后如果存在,则将 +1 添加到 $no
。例如,calNumbers($A1, $A2)
应按如下方式迭代值:
A1 => 1,2,15,92,132
A2 => 2,99,120,132,313
2
存在于 1,2,15,92,132
=> $no=0+1=+1
99
不存在于 1,2,15,92,132
=> $no=+1
120
不存在于 1,2,15,92,132
=> $no=+1
132
存在于 1,2,15,92,132
=> $no=+1+1=+2
313
不存在于 1,2,15,92,132
=> $no=+2
public static function calNumbers($A1, $A2)
{
$value1 = Database::getValues($A1);
$value2 = Database::getValues($A2);
$no = "0";
foreach ($value2 as $number) {
if (array_key_exists($number, $value1)) {
$no++;
} else {
$no;
}
}
return $no;
}
$value1 = array(1,2,15,92,132);
$value2 = array( 2,99,120,132,313 );
var_dump( count( array_intersect( $value1,$value2 ) ) );
另一个答案:
$value1 = array(1,2,15,92,132);
$value2 = array( 2,99,120,132,313 );
$total = 0;
foreach( $value2 as $value ) {
if( true == in_array( $value, $value1 ) ) {
echo 'No:'. $value;
$total += $value;
}
}
echo 'Total:'. $total;
我有一个 MySQL 数据库,其中 table 在 AppliedNo
列中有两个不同的值。 AppliedNo
A1 id
的值是 1,2,15,92,132
,A2 id
是 2,99,120,132,313
。我的目标是编写一段 PHP 代码,可以评估 A1 中每个 A2 成员的存在,然后如果存在,则将 +1 添加到 $no
。例如,calNumbers($A1, $A2)
应按如下方式迭代值:
A1 => 1,2,15,92,132
A2 => 2,99,120,132,313
2
存在于 1,2,15,92,132
=> $no=0+1=+1
99
不存在于 1,2,15,92,132
=> $no=+1
120
不存在于 1,2,15,92,132
=> $no=+1
132
存在于 1,2,15,92,132
=> $no=+1+1=+2
313
不存在于 1,2,15,92,132
=> $no=+2
public static function calNumbers($A1, $A2)
{
$value1 = Database::getValues($A1);
$value2 = Database::getValues($A2);
$no = "0";
foreach ($value2 as $number) {
if (array_key_exists($number, $value1)) {
$no++;
} else {
$no;
}
}
return $no;
}
$value1 = array(1,2,15,92,132);
$value2 = array( 2,99,120,132,313 );
var_dump( count( array_intersect( $value1,$value2 ) ) );
另一个答案:
$value1 = array(1,2,15,92,132);
$value2 = array( 2,99,120,132,313 );
$total = 0;
foreach( $value2 as $value ) {
if( true == in_array( $value, $value1 ) ) {
echo 'No:'. $value;
$total += $value;
}
}
echo 'Total:'. $total;