以前我在更新产品属性值(拿price为例)的时候,通常会这样做:

foreach($product_ids as $id){
$product = Mage::getModel('catalog/product')->load($id);
$product->setPrice($price)->save();
}

因为之前网站产品很少,也就几百个,foreach下来,不会感觉这段code很慢,后来产品逐渐增多,每次走到这里,动辄就会消耗几个小时;echo了一下save,每个产品约耗费5秒,如果有1万件产品,foreach完成就是14个小时,mysql都几乎就要gone 掉了;

上网search了一下发现magento有一个直接更新Attribute的function,改code之后为

$store_id = Mage::app()->getStore('default')->getId();
foreach($product_ids as $id){
Mage::getSingleton('catalog/product_action')->updateAttributes(array($id), array('price'=>$price), $store_id);
}

这段code要比前面的节省5倍左右的时间,很好的解决了我的需求。

本文链接http://blog.csdn.net/shangxiaoxue/article/details/10605579

最新文章

  1. c++ 别名
  2. hdu1722(gcd)
  3. 第七周PSP
  4. PhpStorm (强大的PHP开发环境)2016.2.1 附注册方法
  5. ERROR 1044 (42000) ERROR 1142 (42000): SELECT command denied to user ''@'localhost' for table 'user'
  6. mapreduce入门之wordcount注释详解
  7. DBA常用SQL之会话与等待事件
  8. centreon 降低rrd磁盘读写
  9. CentOS6.3系统安装SCP命令
  10. bzoj2325 [ZJOI2011]道馆之战
  11. stl入门--reverse函数
  12. Js原生轮播-直接上代码
  13. Q:javax.comm 2.0 windows下Eclipse的配置
  14. php的set_time_limit()函数
  15. mysql(七)
  16. php类之clone 克隆
  17. 无旋转Treap简介
  18. 183使用 MediaPlayer Framework 框架播放视频
  19. create table repo_folder_operate_log_bak as select * from repo_folder_operate_log;
  20. LoadRunner 技巧之 IP欺骗 (推荐)

热门文章

  1. leetcode 3Sum python
  2. CentOS 7 +Nginx
  3. 向mysql添加新用户并分配权限
  4. swift 创建tableView并实现协议
  5. 限制**类型物料不能输入BOM
  6. Allegro的优点与缺点
  7. Qt中各个widget前后位置的设定(在Qt中,所有问题都要一分为二,QWidget体系和QGraphicsWidget体系)
  8. Centos 升级MySQL版本或者Yum安装Mysql5.6
  9. C++ 栈的实现
  10. java学习之多线程