摘要:沒有用到權重等相關算法,歡迎大家多提意見,讓我更好的進步愛你喲
要實現的功能是根據用戶購買過得商品進行推薦(猜你喜歡)
數據庫結構:標簽表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去查詢出相關商品的信息即可。
沒有用到權重等相關算法,歡迎大家多提意見,讓我更好的進步!
愛你喲~
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/28318.html
摘要:摘要前文數據挖掘與機器學習技術入門實戰與大家分享了分類算法,在本文中將為大家介紹聚類算法和關聯分析問題。比如,聚類算法可以實現公司客戶價值自動劃分,網頁自動歸類等。 摘要:前文數據挖掘與機器學習技術入門實戰與大家分享了分類算法,在本文中將為大家介紹聚類算法和關聯分析問題。分類算法與聚類到底有何區別?聚類方法應在怎樣的場景下使用?如何使用關聯分析算法解決個性化推薦問題?本文就為大家揭曉答...
摘要:設置和其中密鑰需要自己生成,和支付寶網關是已經給好的,網關有字樣,表明是用于開發測試。上面就是將阿里支付寶支付整合到的全過程了,如果還有什么疑問,可以留言或者私信我源代碼下載鏈接密碼 文章有不當之處,歡迎指正,如果喜歡微信閱讀,你也可以關注我的微信公眾號:好好學java,獲取優質學習資源。 一、支付寶測試環境代碼測試 1.下載電腦網站的官方demo: 下載地址:https://docs...
閱讀 3428·2021-11-12 10:36
閱讀 2734·2021-11-11 16:55
閱讀 2958·2021-09-27 13:36
閱讀 1616·2021-08-05 10:01
閱讀 3556·2019-08-30 15:55
閱讀 765·2019-08-30 13:01
閱讀 1907·2019-08-29 17:16
閱讀 2376·2019-08-29 16:40