php 网上商城促销设计实例代码_PHP
大体的思想,每一个促销要新建一个促销类,有专门的开关来控制是否生效。
用商品里面的促销识别码来判断具体调用哪一个促销实例。
首先,在添加商品的时候,分两步,第一步是添加状态,第二步是把购物车内的商品显示这个状态。
一,添加步骤几个重要的点:
1,添加商品之前,遍历所有的促销互斥条件。
例如,某一款商品不可以和另一个商品同时在一个购物车内;或者某个用户权限,不可以购买特定的一件商品等等。
2,添加商品之前,选择特定的促销实例,来进行添加之前的操作。
注:第二点与第一点的区别在于1是要遍历所有的促销实例,而2是单独的一条。
3,添加商品后,根据特定的促销实例,所要进行的操作。
复制代码 代码如下:
/**
* 向购物车内添加商品
* @param int $goods_id 商品ID
* @param string $goods_spec 商品规格
* @param int $goods_number 商品数量
* @param string $promote_name 商品参加活动
* @return bool
*/
public function goodsAdd($goods_id, $goods_spec, $goods_number, $promote_name)
{
//获取所有有效的促销实例
$rules = $this->_getAllRuleInstance();
foreach($this->_rules as $instance)
{
//换礼互斥判断
if(!$instance->goodsExclusion($goods_id, $goods_spec))
{
return false;
}
}
//获取商品单独的促销实例
$rule = $this->_getRuleInstance($promote_name);
//添加商品之前操作
if($rule->beforeGoodsAdd())
{
$rule->goodsAdd($goods_id, $goods_spec, $goods_number);
//添加商品之后操作
return $rule->afterGoodsAdd();
}
return false;
}
复制代码 代码如下:
/**
* 获取可用规则实例列表
* @return array
*/
private function _getAllRuleInstance()
{
if(empty($this->_rules))
{
$dir = dirname(__FILE__).'/Cart/Rule/';
$dir_handle = opendir($dir);
while($file = readdir($dir_handle))
{
if(is_file($dir.$file))
{
$instance = $this->_getRuleInstance(substr($file, 0, strpos($file, '.')));
if($instance->enabled())
{
$this->_rules[] = $instance;
}
}
}
}
return $this->_rules;
}
复制代码 代码如下:
/**
* 获取购物车规则类
* @param string $name 规则名称
* @return Bll_Shop_Cart_Rule
*/
private function _getRuleInstance($name)
{
$rule_name = 'Bll_Shop_Cart_Rule_'.$name;
try
{
Zend_Loader::loadClass($rule_name);
$this->_rule = new $rule_name();
$this->_rule->setCart($this);
return $this->_rule;
}catch (Exception $e)
{
Bll_LogWriter::logException('购物规则对象加载异常. rule_name:'.$rule_name);
throw new Exception('购物规则对象加载异常.');
}
}
这里主要用到的促销是,判断某一个人是否有添加这个商品的权限,打折等。
二,遍历购物车商品的操作
这一步要执行关键操作是遍历所有促销策略的检查列表函数。
这里常常可以用到的促销是满多少钱,送赠品,买二送一等等。
复制代码 代码如下:
/**
* 获取购物车内商品清单对象列表
* @return array Bll_Shop_Cart_Rule
*/
public function goodsViewList()
{
$list = $this->getGoodsList();
// 在列表时检查购物车内商品列表
$rules = $this->_getAllRuleInstance();
foreach($this->_rules as $instance)
{
$instance->setGoodsList($list)->goodsCheckList();
$this->_tip_rules[] = $instance;
}
//获取最新购物车列表
$goods_list = $this->_cart->getGoodsList();
return $goods_list;
}
第三,提交订单之前的操作
有一些类型的促销,比如某人有打折的权限,当下完订单后,这个打折的权限就被用掉了;或者在下单之前要先检查这个订单的金额,如果小于多少就不准下这个订单等等。
以上这些都会用到提交订单之前的操作。

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP秒殺系統中的價格策略和促銷活動設計要點在一個秒殺系統中,價格策略和促銷活動設計是非常重要的一部分。合理的價格策略和精心設計的促銷活動可以吸引用戶參與秒殺活動,提升系統的使用者體驗和獲利能力。以下將詳細介紹PHP秒殺系統中的價格策略和促銷活動設計要點,並提供具體的程式碼範例。一、價格策略設計要點決定基準價格:在秒殺系統中,基準價格是指商品正常銷售時的價格。在

如何使用C++寫一個簡單的網路商城系統?隨著互聯網的發展,電子商務已成為人們購物的主要方式之一。為了滿足使用者的購物需求,開發一個簡單實用的網路商城系統是非常必要的。本文將介紹如何使用C++來寫一個簡單的網路商城系統。一、需求分析在開始編寫網路商城系統之前,首先需要進行需求分析。根據網路商城的功能特點,我們可以確定以下需求:使用者註冊和登入:使用者可以註冊一

PHP開發商城中的商品原價促銷功能實現方法隨著電子商務的發展與普及,越來越多的商家選擇在網路上開設自己的商城。在商城中,促銷活動是吸引消費者的重要手段之一,而商品的原價促銷則是一種常見且有效的行銷方式。本文將介紹在PHP開發的商城中實現商品原價促銷功能的方法。一、資料庫設計在實現商品原價促銷功能之前,首先需要進行資料庫設計。建立一個商品表,包含商品ID、商品名

PHP和Typecho搭建網路商城的最佳實踐隨著電子商務的快速發展,越來越多的人開始轉向線上購物。為了滿足這項需求,許多開發人員開始探索如何使用PHP和Typecho來建立一個完整的網路商城。本文將介紹使用PHP和Typecho來建立網路商城的最佳實踐,並提供一些程式碼範例。 Typecho是一個簡單且高效的PHP部落格系統,它具有靈活的插件系統和用戶友好的後台管

參考文獻有:1、"PHP和MySQL Web開發";2、 "PHP高階程式設計";3、"PHP Objects, Patterns, and Practice";4、"Laravel: Up and Running";5、"E-commerce in PHP";6、PHP官方文件;7、Laravel官方文件;8、PHP網站開發教學;9、Laravel教學;10、GitHub等等。

本站11月28日消息,淘寶商家服務大廳顯示,今年雙12活動取消,改為“淘寶年終好價節”,將於12月9日晚上8點開啟,現已開始招商,活動商品不要求提供價格保護服務。本次活動設立「跨店滿減」及「官方立減」兩類玩法,每滿200元減30元。跨店滿減支援跨店鋪類型的商品合併付款使用,即符合跨店滿減使用條件的淘寶商品和天貓商品均可合併付款使用優惠。報名時間賣家報名:2023年11月27日12:00:00-2023年12月12日23:59:59商品報名時間為2023年11月27日12:00:00至2023年

8月18日消息,最近有報導稱,中國知名電動車製造商蔚來(NIO)為了促銷其庫存車型,推出了一項限時優惠政策。據了解,此次促銷針對的是蔚來旗下的ET5車型,對庫存時間超過90天的特定批次車輛,購車者可享有高達2.4萬元人民幣的現金直減優惠。這項促銷活動已於上週開始,預計將持續到下週末據報道,參與此次促銷的ET5庫存車型平均庫存時間超過100天,甚至有少數展車的庫存時間達到了200天以上。蔚來銷售人員透露,該優惠政策是專門針對庫存時間超過90天的ET5車型設立的。消費者在蔚來官方App下單購買ET

在當下電商快速發展的時代,促銷活動成為商城吸引顧客、增加銷售的重要手段之一。而隨著科技的不斷進步,許多商城都開始運用PHP所開發的促銷活動功能。本文將從不同的角度對使用PHP開發的商城促銷活動效果進行評估。首先,我們要了解什麼是PHP。 PHP是一種非常受歡迎的伺服器端腳本語言,被廣泛應用於網頁開發。相較於其他語言,PHP具有易學易用、開放性強、相容性好等特點
