我必须设置数组 1. 是工作日的数组,而 2. 是日期名称。我想显示 1 中的日期名称。但阵列是不同的。我试图使用array_intersect
.但它不起作用。
$weekDay
$weekDay=array("1"=>"Mon","2"=>"Tue","3"=>"Wed","4"=>"Thu","5"=>"Fri","6"=>"Sat","7"=>"Sun");
$opDay
=0,0,0,4,0,0,7
所以,我希望结果显示如下:Thu,Sun
.所以我写了这个函数:
function opd($a1,$a2){
$result=array_intersect($a1,$a2);
return $result;
}
但是,由于阵列不可交集。所以当我调用时函数不起作用:
opd($weekDay,$opDay);
有什么功能可以做到这一点吗?
您使用的
日期 ID 是$weekDay
的键,而它们是 $opDay
的值,因此您需要翻转其中一个数组以形成交集:
function opd($a1, $a2)
{
$return = array_intersect(array_flip($a1), $a2);
return implode(',', array_keys($return));
}
例