Skip to content

Commit 445daed

Browse files
committed
Fix a bug during insert statements
1 parent 33b5413 commit 445daed

1 file changed

Lines changed: 13 additions & 4 deletions

File tree

src/Schema/Traits/Custom_Table_Query_Methods.php

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -266,11 +266,20 @@ function ( $entry ) use ( $columns ) {
266266
$columns
267267
)
268268
);
269-
$prepared_values = implode(
270-
', ',
269+
270+
$prepared_values = [];
271+
foreach ( $entries as $row_index => $entry ) {
272+
$prepared_values[ $row_index ] = [];
273+
foreach ( $entry as $column => $value ) {
274+
[ $prepared_value, $placeholder ] = static::prepare_value_for_query( $column, $value );
275+
$prepared_values[ $row_index ][] = $database::prepare( $placeholder, $prepared_value );
276+
}
277+
}
278+
279+
$prepared_values = implode( ', ',
271280
array_map(
272-
static fn ( array $entry ) => '(' . implode( ', ', array_map( static fn( $e ) => $database::prepare( '%s', $e instanceof DateTimeInterface ? $e->format( 'Y-m-d H:i:s' ) : $e ), $entry ) ) . ')',
273-
$entries
281+
static fn ( array $entry ) => '(' . implode( ', ', $entry ) . ')',
282+
$prepared_values
274283
)
275284
);
276285

0 commit comments

Comments
 (0)