我正在尝试构建一个数组以根据搜索值使用 cakephp 从我的数据库中检索数据。但我发现了一个奇怪的行为。% 文字会删除任何字符串/整数的前两个字符(如果它是数字)。
我正在尝试搜索 %250% 之类的所有内容,然后 cake 或 php 输出 0%。它会删除 % 和 25。如果 $filter 不是数字,则不会发生这种情况。
这是我的代码。
if(in_array('part', $s)){
array_push($conditions, array("PN_CLEAN" => $aux));
array_push($conditions['OR'], array("PN_CLEAN LIKE" => '%'.trim($filter).'%'));
}
if(in_array('brand', $s)){
array_push($conditions['OR'], array("BRAND_FOR_INVENTORY LIKE" => '%'.trim($filter).'%'));
}
if(in_array('desc', $s)){
array_push($conditions['OR'], array("DESCRIPTION_FOR_INVENTORY LIKE" => '%'.trim($filter).'%'));
}
if(in_array('cat', $s)){
array_push($conditions['OR'], array("CATEGORY_FOR_INVENTORY LIKE" => '%'.trim($filter).'%'));
}
我试过铸造,sprintf,strval,但没有任何效果。
谢谢