PHP vil ikke erstatte pladsholdere inde i strenge, dvs. inden for anførselstegn. Som i:
$criteria->addCondition('col = :app'); // param can be replaced
$criteria->addCondition('col = ":app"'); // param can't be replaced
Derfor er vi nødt til at bruge mysqls CONCAT() funktion til faktisk at generere strengen til regexp, i stedet for at levere strengen selv, som sådan:
$criteria->addCondition('col regexp CONCAT("[[:<:]]", :app, "[[:>:]]")');
ELLER bind hele regexet selv:
$criteria->addCondition('col regexp :regexp');
$criteria->params = array(':regexp'=>'[[:<:]]'.$app.'[[:>:]]');