@@ -49,6 +49,6 @@ |
||
49 | 49 | * |
50 | 50 | * @return array|string |
51 | 51 | */ |
52 | -function strReplace(array $replacements, string|array $subject): array|string { |
|
52 | +function strReplace(array $replacements, string | array $subject): array | string { |
|
53 | 53 | return str_replace(array_keys($replacements), array_values($replacements), $subject); |
54 | 54 | } |
55 | 55 | \ No newline at end of file |
@@ -29,7 +29,7 @@ discard block |
||
29 | 29 | /** |
30 | 30 | * If you want to use it in standalone mode , you MUST set `auto_process` to `false` |
31 | 31 | */ |
32 | - public static function init (string $host = 'localhost', string $username = 'root', string $password = '', string $dbname = '', bool $auto_process = null, int $port = 3306): void { |
|
32 | + public static function init(string $host = 'localhost', string $username = 'root', string $password = '', string $dbname = '', bool $auto_process = null, int $port = 3306): void { |
|
33 | 33 | $host = settings::$db['host'] ?? $host; |
34 | 34 | $port = settings::$db['port'] ?? $port; |
35 | 35 | $user = settings::$db['user'] ?? settings::$db['username'] ?? $username; |
@@ -39,7 +39,7 @@ discard block |
||
39 | 39 | self::$db_name = $dbname; |
40 | 40 | self::$connection = new mysqli($host, $user, $pass, $dbname, $port); |
41 | 41 | if (self::$connection->connect_errno) { |
42 | - logger::write('SQL connection has problem : ' . self::$connection->connect_error, loggerTypes::ERROR); |
|
42 | + logger::write('SQL connection has problem : '.self::$connection->connect_error, loggerTypes::ERROR); |
|
43 | 43 | throw new bptException('SQL_CONNECTION_PROBLEM'); |
44 | 44 | } |
45 | 45 | if (self::$auto_process && !lock::exist('BPT-MYSQL')) { |
@@ -47,7 +47,7 @@ discard block |
||
47 | 47 | } |
48 | 48 | } |
49 | 49 | |
50 | - private static function install (): void { |
|
50 | + private static function install(): void { |
|
51 | 51 | self::pureQuery(" |
52 | 52 | CREATE TABLE `users` |
53 | 53 | ( |
@@ -68,7 +68,7 @@ discard block |
||
68 | 68 | /** |
69 | 69 | * @internal Only for BPT self usage , Don't use it in your source! |
70 | 70 | */ |
71 | - public static function process (): void { |
|
71 | + public static function process(): void { |
|
72 | 72 | if (self::$auto_process) { |
73 | 73 | if (isset(BPT::$update->message)) { |
74 | 74 | self::processMessage(BPT::$update->message); |
@@ -88,7 +88,7 @@ discard block |
||
88 | 88 | } |
89 | 89 | } |
90 | 90 | |
91 | - private static function processMessage (message $update): void { |
|
91 | + private static function processMessage(message $update): void { |
|
92 | 92 | $type = $update->chat->type; |
93 | 93 | if ($type === chatType::PRIVATE) { |
94 | 94 | $user_id = $update->from->id; |
@@ -114,7 +114,7 @@ discard block |
||
114 | 114 | } |
115 | 115 | } |
116 | 116 | |
117 | - private static function processCallbackQuery (callbackQuery $update): void { |
|
117 | + private static function processCallbackQuery(callbackQuery $update): void { |
|
118 | 118 | $type = $update->message->chat->type; |
119 | 119 | if ($type === chatType::PRIVATE) { |
120 | 120 | $user_id = $update->from->id; |
@@ -124,7 +124,7 @@ discard block |
||
124 | 124 | } |
125 | 125 | } |
126 | 126 | |
127 | - private static function processInlineQuery (inlineQuery $update): void { |
|
127 | + private static function processInlineQuery(inlineQuery $update): void { |
|
128 | 128 | $type = $update->chat_type; |
129 | 129 | if ($type === chatType::PRIVATE || $type === chatType::SENDER) { |
130 | 130 | $user_id = $update->from->id; |
@@ -134,7 +134,7 @@ discard block |
||
134 | 134 | } |
135 | 135 | } |
136 | 136 | |
137 | - private static function processMyChatMember (chatMemberUpdated $update): void { |
|
137 | + private static function processMyChatMember(chatMemberUpdated $update): void { |
|
138 | 138 | $type = $update->chat->type; |
139 | 139 | if ($type === chatType::PRIVATE) { |
140 | 140 | if ($update->new_chat_member->status === chatMemberStatus::MEMBER) { |
@@ -151,7 +151,7 @@ discard block |
||
151 | 151 | * |
152 | 152 | * @return mysqli |
153 | 153 | */ |
154 | - public static function getMysqli (): mysqli { |
|
154 | + public static function getMysqli(): mysqli { |
|
155 | 155 | return self::$connection; |
156 | 156 | } |
157 | 157 | |
@@ -162,7 +162,7 @@ discard block |
||
162 | 162 | * |
163 | 163 | * @return int|string |
164 | 164 | */ |
165 | - public static function affected_rows (): int|string { |
|
165 | + public static function affected_rows(): int | string { |
|
166 | 166 | return self::$connection->affected_rows; |
167 | 167 | } |
168 | 168 | |
@@ -173,7 +173,7 @@ discard block |
||
173 | 173 | * |
174 | 174 | * @return int|string |
175 | 175 | */ |
176 | - public static function affectedRows (): int|string { |
|
176 | + public static function affectedRows(): int | string { |
|
177 | 177 | return self::$connection->affected_rows; |
178 | 178 | } |
179 | 179 | |
@@ -184,7 +184,7 @@ discard block |
||
184 | 184 | * |
185 | 185 | * @return int|string |
186 | 186 | */ |
187 | - public static function insert_id (): int|string { |
|
187 | + public static function insert_id(): int | string { |
|
188 | 188 | return self::$connection->insert_id; |
189 | 189 | } |
190 | 190 | |
@@ -195,7 +195,7 @@ discard block |
||
195 | 195 | * |
196 | 196 | * @return int|string |
197 | 197 | */ |
198 | - public static function insertId (): int|string { |
|
198 | + public static function insertId(): int | string { |
|
199 | 199 | return self::$connection->insert_id; |
200 | 200 | } |
201 | 201 | |
@@ -206,7 +206,7 @@ discard block |
||
206 | 206 | * |
207 | 207 | * @return string |
208 | 208 | */ |
209 | - public static function escapeString (string $text): string { |
|
209 | + public static function escapeString(string $text): string { |
|
210 | 210 | return self::$connection->real_escape_string($text); |
211 | 211 | } |
212 | 212 | |
@@ -215,7 +215,7 @@ discard block |
||
215 | 215 | * |
216 | 216 | * @return string |
217 | 217 | */ |
218 | - public static function error (): string { |
|
218 | + public static function error(): string { |
|
219 | 219 | return self::$connection->error; |
220 | 220 | } |
221 | 221 | |
@@ -224,7 +224,7 @@ discard block |
||
224 | 224 | * |
225 | 225 | * @return int |
226 | 226 | */ |
227 | - public static function errno (): int { |
|
227 | + public static function errno(): int { |
|
228 | 228 | return self::$connection->errno; |
229 | 229 | } |
230 | 230 | |
@@ -235,7 +235,7 @@ discard block |
||
235 | 235 | * |
236 | 236 | * @return bool |
237 | 237 | */ |
238 | - public static function setCharset (string $charset): bool { |
|
238 | + public static function setCharset(string $charset): bool { |
|
239 | 239 | return self::$connection->set_charset($charset); |
240 | 240 | } |
241 | 241 | |
@@ -250,7 +250,7 @@ discard block |
||
250 | 250 | * |
251 | 251 | * @return mysqli_result|bool |
252 | 252 | */ |
253 | - public static function pureQuery (string $query): mysqli_result|bool { |
|
253 | + public static function pureQuery(string $query): mysqli_result | bool { |
|
254 | 254 | return self::$connection->query($query); |
255 | 255 | } |
256 | 256 | |
@@ -271,7 +271,7 @@ discard block |
||
271 | 271 | * |
272 | 272 | * @return mysqli_result|bool |
273 | 273 | */ |
274 | - public static function query (string $query, array $vars = [], bool $need_result = true): mysqli_result|bool { |
|
274 | + public static function query(string $query, array $vars = [], bool $need_result = true): mysqli_result | bool { |
|
275 | 275 | if (empty($vars)) { |
276 | 276 | return self::pureQuery($query); |
277 | 277 | } |
@@ -288,7 +288,7 @@ discard block |
||
288 | 288 | $types .= 's'; |
289 | 289 | } |
290 | 290 | } |
291 | - $prepare->bind_param($types,...$vars); |
|
291 | + $prepare->bind_param($types, ...$vars); |
|
292 | 292 | if (!$prepare->execute()) { |
293 | 293 | logger::write(loggerTypes::WARNING, $prepare->error); |
294 | 294 | return false; |
@@ -319,8 +319,8 @@ discard block |
||
319 | 319 | continue; |
320 | 320 | } |
321 | 321 | |
322 | - $operator = substr($value,0,2); |
|
323 | - $operator_value = substr($value,2); |
|
322 | + $operator = substr($value, 0, 2); |
|
323 | + $operator_value = substr($value, 2); |
|
324 | 324 | switch ($operator) { |
325 | 325 | case '>=': |
326 | 326 | $query .= " `$name` >= ?"; |
@@ -357,17 +357,17 @@ discard block |
||
357 | 357 | return $values; |
358 | 358 | } |
359 | 359 | |
360 | - private static function groupByBuilder(string &$query, string|array $group_by = []): void { |
|
360 | + private static function groupByBuilder(string &$query, string | array $group_by = []): void { |
|
361 | 361 | if (empty($group_by)) { |
362 | 362 | return; |
363 | 363 | } |
364 | 364 | if (is_string($group_by)) { |
365 | 365 | $group_by = [$group_by]; |
366 | 366 | } |
367 | - $query .= ' GROUP BY `' . implode('`, `',$group_by) . '`'; |
|
367 | + $query .= ' GROUP BY `'.implode('`, `', $group_by).'`'; |
|
368 | 368 | } |
369 | 369 | |
370 | - private static function orderByBuilder(string &$query, string|array $order_by = []): void { |
|
370 | + private static function orderByBuilder(string &$query, string | array $order_by = []): void { |
|
371 | 371 | if (empty($order_by)) { |
372 | 372 | return; |
373 | 373 | } |
@@ -420,8 +420,8 @@ discard block |
||
420 | 420 | continue; |
421 | 421 | } |
422 | 422 | |
423 | - $operator = substr($value,0,2); |
|
424 | - $operator_value = substr($value,2); |
|
423 | + $operator = substr($value, 0, 2); |
|
424 | + $operator_value = substr($value, 2); |
|
425 | 425 | switch ($operator) { |
426 | 426 | case '+=': |
427 | 427 | $query .= " `$name` = `$name` + ?"; |
@@ -454,14 +454,14 @@ discard block |
||
454 | 454 | return $values; |
455 | 455 | } |
456 | 456 | |
457 | - private static function insertBuilder(string &$query, string|array $columns, array|string $values): array { |
|
458 | - $query .= '(`' . (is_string($columns) ? $columns : implode('`,`', $columns)) . '`) VALUES ('; |
|
457 | + private static function insertBuilder(string &$query, string | array $columns, array | string $values): array { |
|
458 | + $query .= '(`'.(is_string($columns) ? $columns : implode('`,`', $columns)).'`) VALUES ('; |
|
459 | 459 | if (is_string($values)) $values = [$values]; |
460 | - $query .= '?' . str_repeat(',?', count($values) - 1) . ')'; |
|
460 | + $query .= '?'.str_repeat(',?', count($values) - 1).')'; |
|
461 | 461 | return $values; |
462 | 462 | } |
463 | 463 | |
464 | - private static function selectBuilder (string &$query, string|array $columns): void { |
|
464 | + private static function selectBuilder(string &$query, string | array $columns): void { |
|
465 | 465 | if ($columns == '*') { |
466 | 466 | $query .= " * "; |
467 | 467 | return; |
@@ -480,7 +480,7 @@ discard block |
||
480 | 480 | $formatted = '*'; |
481 | 481 | $column = 'all'; |
482 | 482 | } |
483 | - $query .= strtoupper($function) . "($formatted) as `{$function}_$column`"; |
|
483 | + $query .= strtoupper($function)."($formatted) as `{$function}_$column`"; |
|
484 | 484 | } |
485 | 485 | else { |
486 | 486 | $query .= "`$column`"; |
@@ -505,7 +505,7 @@ discard block |
||
505 | 505 | * |
506 | 506 | * @return bool |
507 | 507 | */ |
508 | - public static function delete (string $table, array $where = null, int $count = null, int $offset = null): bool { |
|
508 | + public static function delete(string $table, array $where = null, int $count = null, int $offset = null): bool { |
|
509 | 509 | $query = "DELETE FROM `$table`"; |
510 | 510 | $vars = self::whereBuilder($query, $where); |
511 | 511 | return self::query($query, $vars, false); |
@@ -524,7 +524,7 @@ discard block |
||
524 | 524 | * |
525 | 525 | * @return bool |
526 | 526 | */ |
527 | - public static function update (string $table, array $modify, array $where = null, int $count = null, int $offset = null): bool { |
|
527 | + public static function update(string $table, array $modify, array $where = null, int $count = null, int $offset = null): bool { |
|
528 | 528 | $query = "UPDATE `$table` SET"; |
529 | 529 | $modify_vars = self::updateBuilder($query, $modify); |
530 | 530 | $where_vars = self::whereBuilder($query, $where); |
@@ -543,7 +543,7 @@ discard block |
||
543 | 543 | * |
544 | 544 | * @return bool |
545 | 545 | */ |
546 | - public static function insert (string $table, string|array $columns, array|string $values): bool { |
|
546 | + public static function insert(string $table, string | array $columns, array | string $values): bool { |
|
547 | 547 | $query = "INSERT INTO `$table`"; |
548 | 548 | $values = self::insertBuilder($query, $columns, $values); |
549 | 549 | return self::query($query, $values, false); |
@@ -566,14 +566,14 @@ discard block |
||
566 | 566 | * |
567 | 567 | * @return mysqli_result|bool |
568 | 568 | */ |
569 | - public static function select (string $table, array|string $columns = '*', array $where = null, int $count = null, int $offset = null, array|string $group_by = [], array|string $order_by = []): mysqli_result|bool { |
|
569 | + public static function select(string $table, array | string $columns = '*', array $where = null, int $count = null, int $offset = null, array | string $group_by = [], array | string $order_by = []): mysqli_result | bool { |
|
570 | 570 | $query = "SELECT"; |
571 | 571 | self::selectBuilder($query, $columns); |
572 | 572 | $query .= "FROM `$table`"; |
573 | - $var = self::whereBuilder($query,$where); |
|
573 | + $var = self::whereBuilder($query, $where); |
|
574 | 574 | self::groupByBuilder($query, $group_by); |
575 | 575 | self::orderByBuilder($query, $order_by); |
576 | - self::countBuilder($query,$count,$offset); |
|
576 | + self::countBuilder($query, $count, $offset); |
|
577 | 577 | return self::query($query, $var); |
578 | 578 | } |
579 | 579 | |
@@ -590,7 +590,7 @@ discard block |
||
590 | 590 | * |
591 | 591 | * @return null|bool|array |
592 | 592 | */ |
593 | - public static function selectArray (string $table, array|string $columns = '*', array $where = null, array|string $group_by = [], array|string $order_by = []): bool|array|null { |
|
593 | + public static function selectArray(string $table, array | string $columns = '*', array $where = null, array | string $group_by = [], array | string $order_by = []): bool | array | null { |
|
594 | 594 | $res = self::select($table, $columns, $where, 1, 0, $group_by, $order_by); |
595 | 595 | if ($res) { |
596 | 596 | return $res->fetch_assoc(); |
@@ -609,7 +609,7 @@ discard block |
||
609 | 609 | * @param array|string $group_by group result based on these columns |
610 | 610 | * @param array|string $order_by order result based on these columns |
611 | 611 | */ |
612 | - public static function selectObject (string $table, array|string $columns = '*', array $where = null, array|string $group_by = [], array|string $order_by = []) { |
|
612 | + public static function selectObject(string $table, array | string $columns = '*', array $where = null, array | string $group_by = [], array | string $order_by = []) { |
|
613 | 613 | $res = self::select($table, $columns, $where, 1, 0, $group_by, $order_by); |
614 | 614 | if ($res) { |
615 | 615 | return $res->fetch_object(); |
@@ -633,7 +633,7 @@ discard block |
||
633 | 633 | * |
634 | 634 | * @return bool|Generator |
635 | 635 | */ |
636 | - public static function selectEach (string $table, array|string $columns = '*', array $where = null, int $count = null, int $offset = null, array|string $group_by = [], array|string $order_by = []): bool|Generator { |
|
636 | + public static function selectEach(string $table, array | string $columns = '*', array $where = null, int $count = null, int $offset = null, array | string $group_by = [], array | string $order_by = []): bool | Generator { |
|
637 | 637 | $res = self::select($table, $columns, $where, $count, $offset, $group_by, $order_by); |
638 | 638 | if ($res) { |
639 | 639 | while ($row = $res->fetch_assoc()) yield $row; |
@@ -651,10 +651,10 @@ discard block |
||
651 | 651 | * |
652 | 652 | * @return string if save is true , return file name otherwise return sql data |
653 | 653 | */ |
654 | - public static function backup (array $wanted_tables = null, bool $table_data = true, bool $save = true, string $file_name = ''): string { |
|
654 | + public static function backup(array $wanted_tables = null, bool $table_data = true, bool $save = true, string $file_name = ''): string { |
|
655 | 655 | self::setCharset('utf8mb4'); |
656 | 656 | |
657 | - $tables = array_column(self::query('SHOW TABLES')->fetch_all(),0); |
|
657 | + $tables = array_column(self::query('SHOW TABLES')->fetch_all(), 0); |
|
658 | 658 | if (!empty($wanted_tables)) { |
659 | 659 | $tables = array_intersect($tables, $wanted_tables); |
660 | 660 | } |
@@ -665,12 +665,12 @@ discard block |
||
665 | 665 | logger::write('No table founded for backup, if your database has table : check $wanted_tables argument', loggerTypes::WARNING); |
666 | 666 | } |
667 | 667 | foreach ($tables as $table) { |
668 | - $sql .= self::query("SHOW CREATE TABLE `$table`")->fetch_row()[1] . ";\n\n"; |
|
668 | + $sql .= self::query("SHOW CREATE TABLE `$table`")->fetch_row()[1].";\n\n"; |
|
669 | 669 | if ($table_data) { |
670 | 670 | $total_rows = self::query("SELECT COUNT(*) as `cnt` FROM `$table`")->fetch_object()->cnt; |
671 | 671 | for ($i = 0; $i < $total_rows; $i = $i + 1000) { |
672 | - $sql .= "INSERT INTO " . $table . " VALUES"; |
|
673 | - $result = self::select($table, '*' , null, 1000, $i); |
|
672 | + $sql .= "INSERT INTO ".$table." VALUES"; |
|
673 | + $result = self::select($table, '*', null, 1000, $i); |
|
674 | 674 | $field_count = $result->field_count; |
675 | 675 | $affected_rows = self::affected_rows(); |
676 | 676 | $counter = 1; |
@@ -678,12 +678,12 @@ discard block |
||
678 | 678 | $sql .= "\n("; |
679 | 679 | for ($column = 0; $column < $field_count; $column++) { |
680 | 680 | $row[$column] = str_replace("\n", "\\n", addslashes($row[$column])); |
681 | - $sql .= !empty($row[$column]) ? '"' . $row[$column] . '"' : '""'; |
|
681 | + $sql .= !empty($row[$column]) ? '"'.$row[$column].'"' : '""'; |
|
682 | 682 | if ($column < $field_count - 1) { |
683 | 683 | $sql .= ','; |
684 | 684 | } |
685 | 685 | } |
686 | - $sql .= ')' . ($counter == $affected_rows ? ';' : ','); |
|
686 | + $sql .= ')'.($counter == $affected_rows ? ';' : ','); |
|
687 | 687 | $counter++; |
688 | 688 | } |
689 | 689 | } |
@@ -699,7 +699,7 @@ discard block |
||
699 | 699 | } |
700 | 700 | |
701 | 701 | if (empty($file_name)) { |
702 | - $file_name = self::$db_name . time() . '.sql'; |
|
702 | + $file_name = self::$db_name.time().'.sql'; |
|
703 | 703 | } |
704 | 704 | file_put_contents($file_name, $sql); |
705 | 705 | return $file_name; |
@@ -72,17 +72,13 @@ discard block |
||
72 | 72 | if (self::$auto_process) { |
73 | 73 | if (isset(BPT::$update->message)) { |
74 | 74 | self::processMessage(BPT::$update->message); |
75 | - } |
|
76 | - elseif (isset(BPT::$update->edited_message)) { |
|
75 | + } elseif (isset(BPT::$update->edited_message)) { |
|
77 | 76 | self::processMessage(BPT::$update->edited_message); |
78 | - } |
|
79 | - elseif (isset(BPT::$update->callback_query)) { |
|
77 | + } elseif (isset(BPT::$update->callback_query)) { |
|
80 | 78 | self::processCallbackQuery(BPT::$update->callback_query); |
81 | - } |
|
82 | - elseif (isset(BPT::$update->inline_query)) { |
|
79 | + } elseif (isset(BPT::$update->inline_query)) { |
|
83 | 80 | self::processInlineQuery(BPT::$update->inline_query); |
84 | - } |
|
85 | - elseif (isset(BPT::$update->my_chat_member)) { |
|
81 | + } elseif (isset(BPT::$update->my_chat_member)) { |
|
86 | 82 | self::processMyChatMember(BPT::$update->my_chat_member); |
87 | 83 | } |
88 | 84 | } |
@@ -139,8 +135,7 @@ discard block |
||
139 | 135 | if ($type === chatType::PRIVATE) { |
140 | 136 | if ($update->new_chat_member->status === chatMemberStatus::MEMBER) { |
141 | 137 | self::update('users', ['blocked' => false], ['id' => $update->from->id], 1); |
142 | - } |
|
143 | - else { |
|
138 | + } else { |
|
144 | 139 | self::update('users', ['blocked' => true], ['id' => $update->from->id], 1); |
145 | 140 | } |
146 | 141 | } |
@@ -280,11 +275,9 @@ discard block |
||
280 | 275 | foreach ($vars as $var) { |
281 | 276 | if (is_int($var)) { |
282 | 277 | $types .= 'i'; |
283 | - } |
|
284 | - elseif (is_double($var)) { |
|
278 | + } elseif (is_double($var)) { |
|
285 | 279 | $types .= 'd'; |
286 | - } |
|
287 | - else { |
|
280 | + } else { |
|
288 | 281 | $types .= 's'; |
289 | 282 | } |
290 | 283 | } |
@@ -308,8 +301,7 @@ discard block |
||
308 | 301 | foreach ($where as $name => $value) { |
309 | 302 | if ($first) { |
310 | 303 | $first = false; |
311 | - } |
|
312 | - else { |
|
304 | + } else { |
|
313 | 305 | $query .= ' AND'; |
314 | 306 | } |
315 | 307 | |
@@ -381,8 +373,7 @@ discard block |
||
381 | 373 | foreach ($order_by as $key => $mode) { |
382 | 374 | if ($first) { |
383 | 375 | $first = false; |
384 | - } |
|
385 | - else { |
|
376 | + } else { |
|
386 | 377 | $query .= ', '; |
387 | 378 | } |
388 | 379 | if (is_numeric($key)) { |
@@ -396,8 +387,7 @@ discard block |
||
396 | 387 | private static function countBuilder(string &$query, int $count = null, int $offset = null): void { |
397 | 388 | if (!empty($count)) { |
398 | 389 | $query .= !empty($offset) ? " LIMIT $offset,$count" : " LIMIT $count"; |
399 | - } |
|
400 | - elseif (!empty($offset)) { |
|
390 | + } elseif (!empty($offset)) { |
|
401 | 391 | $query .= " OFFSET $offset"; |
402 | 392 | } |
403 | 393 | } |
@@ -409,8 +399,7 @@ discard block |
||
409 | 399 | foreach ($modify as $name => $value) { |
410 | 400 | if ($first) { |
411 | 401 | $first = false; |
412 | - } |
|
413 | - else { |
|
402 | + } else { |
|
414 | 403 | $query .= ' ,'; |
415 | 404 | } |
416 | 405 | |
@@ -456,7 +445,9 @@ discard block |
||
456 | 445 | |
457 | 446 | private static function insertBuilder(string &$query, string|array $columns, array|string $values): array { |
458 | 447 | $query .= '(`' . (is_string($columns) ? $columns : implode('`,`', $columns)) . '`) VALUES ('; |
459 | - if (is_string($values)) $values = [$values]; |
|
448 | + if (is_string($values)) { |
|
449 | + $values = [$values]; |
|
450 | + } |
|
460 | 451 | $query .= '?' . str_repeat(',?', count($values) - 1) . ')'; |
461 | 452 | return $values; |
462 | 453 | } |
@@ -481,8 +472,7 @@ discard block |
||
481 | 472 | $column = 'all'; |
482 | 473 | } |
483 | 474 | $query .= strtoupper($function) . "($formatted) as `{$function}_$column`"; |
484 | - } |
|
485 | - else { |
|
475 | + } else { |
|
486 | 476 | $query .= "`$column`"; |
487 | 477 | } |
488 | 478 | |
@@ -636,9 +626,12 @@ discard block |
||
636 | 626 | public static function selectEach (string $table, array|string $columns = '*', array $where = null, int $count = null, int $offset = null, array|string $group_by = [], array|string $order_by = []): bool|Generator { |
637 | 627 | $res = self::select($table, $columns, $where, $count, $offset, $group_by, $order_by); |
638 | 628 | if ($res) { |
639 | - while ($row = $res->fetch_assoc()) yield $row; |
|
629 | + while ($row = $res->fetch_assoc()) { |
|
630 | + yield $row; |
|
631 | + } |
|
632 | + } else { |
|
633 | + return $res; |
|
640 | 634 | } |
641 | - else return $res; |
|
642 | 635 | } |
643 | 636 | |
644 | 637 | /** |