【发布时间】:2016-12-19 05:44:27
【问题描述】:
我编写了一个代码来添加来自 sku 的产品描述。现在脚本工作正常,但所有格式似乎都像 csv 一样丢失了,并且添加到产品的描述是部分的(似乎它在任何特殊字符之后删除了字符串)。
我的代码:
require_once 'app/Mage.php';
umask(0);
Mage::app()->setCurrentStore(Mage_Core_Model_App::ADMIN_STORE_ID);
if (($handle = fopen("Witedescriptions.csv", "r")) !== FALSE) {
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
$desc =$data[1];
$sku = $data[2];
$product = Mage::getModel('catalog/product')->loadByAttribute('sku',$sku);
$product->setDescription($desc);
$product->save();
}
fclose($handle);
}
CSV 文件结构
Sno. , Description , Sku
关于样本数据的描述
Test this is dummy data abd’s base is of a slim yellow gold halo that easily fits on a finger.
list here
• list 1
• list 2
当我运行脚本时,产品只有以下数据:
Test this is dummy data abd
似乎它必须转义一些字符,我尝试了您的代码,并将我的描述设置为“美国的黄金价格”,但在管理产品中我只得到了“黄金”
【问题讨论】:
-
我已经测试了你的代码,解析CSV文件并获取值时没有问题。问题应该在这里:
$product->setDescription($desc);,所以看看那个函数。我想您需要先从描述中删除/替换有问题的字符,然后再将其存储到数据库中。 -
它只是找不到为什么即使添加 addlahes 也不起作用