他的回答是一个数组 [数学,物理,化学,IT,体育]
我有一个清单:
软件分析师:[数学,IT,编程,压力,计算机]
卡车驾驶:[运动,驾驶,旅行,交流]
物理化学老师:[数学,物理,化学,教学]
PHP中使用用户输入获取具有最大公共标记的作业的最佳方法是什么?
答案 0 :(得分:2)
您使用array_intersect()
查找常用标记,然后比较返回的标记数量。
$jobs = array(
'software' => array('Math','IT','Programing','Stress','Computer')
'truck' => array('Sports','Driving','Traveling','Exchange')
'physic' => array('Math','Physics','Chemistry','Teaching')
);
$user_tags= array('Math','Physics','Chemistry','IT','Sports');
$max_common = 0;
$desired_job = '';
foreach($jobs as $key=>$job) {
$common = count(array_intersect($job,$user_tags);
if(max_common < $common) {
$desired_job = $key;
$max_common = $common;
}
}