У меня есть объект ArrayCollection от Hashtag (для сопоставления базы данных и таблицы установлено значение utf8_bin_ci), который я хочу сопоставить по критериям, но он не учитывает регистр .
Я пробовал выражения «Содержит», «Эквалайзер», «Запускается с», «Закрывается с», но при сопоставлении возвращает ноль, однако имеет много результатов без соответствия Критериям.
Если я добавлю strtolower / strtoupper к свойству $this->name
, это сработает в указанном случае.
Как сделать так, чтобы критерии не учитывали регистр или совпадения здесь?
public function getHashtags($max = null) {
$hashtags = $this->hashtags;
$hashtags->getIterator();
$crit = Criteria::create()
->where(Criteria::expr()->contains('name', $this->name))
if (!empty($max)) {
$crit->setMaxResults($max);
}
return $hashtags->matching($crit);
}