在Magento中可以使用SalesRule模块下的Mage_SalesRule_Model_Coupon_Codegenerator类随机生成coupon code。
首选获得code genetator实例,可以调用Mage_SalesRule_Model_Rule的
静态方法:
$codeGenerator = Mage_SalesRule_Model_Rule::getCouponCodeGenerator()
也可以自己通过下面的方法:
$codeGenerator = Mage::getSingleton('salesrule/coupon_codegenerator', array('length' => 16));
好处是可以自己定义生成的coupon code的长度和字符词典 (array('alphabet' =>'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'))。
然后就可以调用generateCode方法来随机生成code:
$randomCode = $codeGenerator->generateCode();