摘要:没有用到权重等相关算法,欢迎大家多提意见,让我更好的进步爱你哟
要实现的功能是根据用户购买过得商品进行推荐(猜你喜欢)
数据库结构:标签表label,商品标签关联表goods_label,商品表goods,商品sku表goods_sku,订单表order,订单商品快照表order_goods
实现原理:根据购买过商品的标签,为用户推荐商品
活不多说,上代码:
$memberid=$member->checktoken($param["token"]); $orderlist = $order->getorder(array("member_id"=>$memberid)); $list = array(); foreach ($orderlist as $value1) { $ordergoods = $order->getordergoods($value1["ordernumber"]); foreach ($ordergoods as $value) { $labellist = array(); $label_id = $that->labegoodsinfo(array("goods_id"=>$value["goods_id"])); $labellist = explode(",", $label_id); $list = array_merge($list,$labellist); $list = array_unique($list); //$list即为用户购买过的商品标签 //格式:$list=array(0=>1,1=>3,2=>5,3=>4); } } $label_goods = $that->getgoodslabel(); foreach ($label_goods as $k=>$value) { $goods_labelid = explode(",", $value["label_id"]); $label_goods[$k]["count"] = count(array_intersect($goods_labelid,$list)); if($label_goods[$k]["count"] == 0){ unset($label_goods[$k]); } } //$label_goods是符合$list标签的商品以及count是符合的标签个数 //格式:$label_goods=array(0=>array("label_id"=>1,3,6,"goodsid"=>1,"count"=>2), // 1=>array("label_id"=>1,3,5,"goodsid"=>2,"count"=>3) // ) $sort = array( "direction" => "SORT_DESC", //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序 "field" => "count", //排序字段 ); $arrSort = array(); foreach($label_goods AS $uniqid => $row){ foreach($row AS $key=>$value){ $arrSort[$key][$uniqid] = $value; } } if($sort["direction"]){ array_multisort($arrSort[$sort["field"]],constant($sort["direction"]),$label_goods); } //$label_goods重新排序,按照符合标签数由多到少排序 //格式:$label_goods=array(0=>array("label_id"=>1,3,5,"goodsid"=>2,"count"=>3), // 1=>array("label_id"=>1,3,6,"goodsid"=>1,"count"=>2) // )
最后只要根据goodsid去查询出相关商品的信息即可。
没有用到权重等相关算法,欢迎大家多提意见,让我更好的进步!
爱你哟~
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/28318.html
摘要:摘要前文数据挖掘与机器学习技术入门实战与大家分享了分类算法,在本文中将为大家介绍聚类算法和关联分析问题。比如,聚类算法可以实现公司客户价值自动划分,网页自动归类等。 摘要:前文数据挖掘与机器学习技术入门实战与大家分享了分类算法,在本文中将为大家介绍聚类算法和关联分析问题。分类算法与聚类到底有何区别?聚类方法应在怎样的场景下使用?如何使用关联分析算法解决个性化推荐问题?本文就为大家揭晓答...
摘要:设置和其中密钥需要自己生成,和支付宝网关是已经给好的,网关有字样,表明是用于开发测试。上面就是将阿里支付宝支付整合到的全过程了,如果还有什么疑问,可以留言或者私信我源代码下载链接密码 文章有不当之处,欢迎指正,如果喜欢微信阅读,你也可以关注我的微信公众号:好好学java,获取优质学习资源。 一、支付宝测试环境代码测试 1.下载电脑网站的官方demo: 下载地址:https://docs...
阅读 3385·2021-11-12 10:36
阅读 2719·2021-11-11 16:55
阅读 2932·2021-09-27 13:36
阅读 1591·2021-08-05 10:01
阅读 3532·2019-08-30 15:55
阅读 745·2019-08-30 13:01
阅读 1871·2019-08-29 17:16
阅读 2355·2019-08-29 16:40