77use Yiisoft \Db \Expression \ExpressionInterface ;
88use Yiisoft \Db \QueryBuilder \Condition \Like ;
99use Yiisoft \Db \QueryBuilder \QueryBuilderInterface ;
10- use Yiisoft \Db \Schema \Quoter ;
1110
1211use function substr ;
1312
@@ -28,29 +27,23 @@ final class LikeBuilder extends \Yiisoft\Db\QueryBuilder\Condition\Builder\LikeB
2827 '! ' => '!! ' ,
2928 ];
3029
31- public function __construct (private QueryBuilderInterface $ queryBuilder )
32- {
30+ public function __construct (
31+ private readonly QueryBuilderInterface $ queryBuilder ,
32+ ) {
3333 parent ::__construct ($ queryBuilder , $ this ->getEscapeSql ());
34- }
35-
36- public function build (ExpressionInterface $ expression , array &$ params = []): string
37- {
38- if (!isset ($ this ->escapingReplacements ['\\' ])) {
39- /*
40- * Different pdo_oci8 versions may or may not implement `PDO::quote()`, so {@see Quoter::quoteValue()} may or
41- * may not quote `\`.
42- */
43- $ this ->escapingReplacements ['\\' ] = substr ($ this ->queryBuilder ->getQuoter ()->quoteValue ('\\' ), 1 , -1 );
44- }
4534
46- return parent ::build ($ expression , $ params );
35+ /**
36+ * Different pdo_oci8 versions may or may not implement `PDO::quote()`, so {@see Quoter::quoteValue()} may or
37+ * may not quote `\`.
38+ */
39+ $ this ->escapingReplacements ['\\' ] = substr ($ this ->queryBuilder ->getQuoter ()->quoteValue ('\\' ), 1 , -1 );
4740 }
4841
49- protected function prepareColumn (Like $ expression , array &$ params ): string
42+ protected function prepareColumn (Like $ condition , array &$ params ): string
5043 {
51- $ column = parent ::prepareColumn ($ expression , $ params );
44+ $ column = parent ::prepareColumn ($ condition , $ params );
5245
53- if ($ expression ->caseSensitive === false ) {
46+ if ($ condition ->caseSensitive === false ) {
5447 $ column = 'LOWER( ' . $ column . ') ' ;
5548 }
5649
@@ -59,13 +52,12 @@ protected function prepareColumn(Like $expression, array &$params): string
5952
6053 protected function preparePlaceholderName (
6154 string |ExpressionInterface $ value ,
62- Like $ expression ,
63- ?array $ escape ,
55+ Like $ condition ,
6456 array &$ params ,
6557 ): string {
66- $ placeholderName = parent ::preparePlaceholderName ($ value , $ expression , $ escape , $ params );
58+ $ placeholderName = parent ::preparePlaceholderName ($ value , $ condition , $ params );
6759
68- if ($ expression ->caseSensitive === false ) {
60+ if ($ condition ->caseSensitive === false ) {
6961 $ placeholderName = 'LOWER( ' . $ placeholderName . ') ' ;
7062 }
7163
0 commit comments