php – 使用’like’的Magento属性过滤器不能按预期运行

我遇到addAttributetoFilter()的问题,它没有像我期望的那样工作.

$product = Mage::getModel('catalog/product');
...snip...
$simple_associated_collection = $product->getCollection()
  ->addAttributetoFilter('type_id','simple')
  ->addAttributetoFilter('sku',array('like'=>$configurable_product_sku.'_%'))
  ->load();

传递4_%我希望得到

4_1
4_2

但我也明白了

42_1
420_1

目标是获取一组简单的产品,以便我可以在导入后将它们与可配置的父项相关联.

我应该如何使用LIKE来获得与MysqL相同的结果?

解决方法

Magento在这里没有错,_是一个通配符.

我用Nick的评论回应了我所期望的sql.

固定:

->addAttributetoFilter('sku',array('like'=>$configurable_product_sku.'\_%'))

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...