diff --git a/dibi/drivers/sqlite.reflector.php b/dibi/drivers/sqlite.reflector.php index 9af4edf9..a66484ee 100644 --- a/dibi/drivers/sqlite.reflector.php +++ b/dibi/drivers/sqlite.reflector.php @@ -69,7 +69,7 @@ class DibiSqliteReflector extends DibiObject implements IDibiReflector $columns = array(); while ($row = $res->fetch(TRUE)) { $column = $row['name']; - $pattern = "/(\"$column\"|\[$column\]|$column)\s+[^,]+\s+PRIMARY\s+KEY\s+AUTOINCREMENT/Ui"; + $pattern = "/(\"$column\"|\[$column\]|$column)\\s+[^,]+\\s+PRIMARY\\s+KEY\\s+AUTOINCREMENT/Ui"; $type = explode('(', $row['type']); $columns[] = array( 'name' => $column, diff --git a/dibi/libs/DibiFluent.php b/dibi/libs/DibiFluent.php index f9359b3d..07887cb8 100644 --- a/dibi/libs/DibiFluent.php +++ b/dibi/libs/DibiFluent.php @@ -181,7 +181,7 @@ class DibiFluent extends DibiObject implements IDataSource if ($arg === TRUE) { // flag return $this; - } elseif (is_string($arg) && preg_match('#^[a-z:_][a-z0-9_.:]*$#i', $arg)) { // identifier + } elseif (is_string($arg) && preg_match('#^[a-z:_][a-z0-9_.:]*\z#i', $arg)) { // identifier $args = array('%n', $arg); } elseif (is_array($arg) || ($arg instanceof Traversable && !$arg instanceof self)) { // any array diff --git a/dibi/libs/DibiTranslator.php b/dibi/libs/DibiTranslator.php index bfe82aae..e14cf1fa 100644 --- a/dibi/libs/DibiTranslator.php +++ b/dibi/libs/DibiTranslator.php @@ -353,7 +353,7 @@ final class DibiTranslator extends DibiObject case 'i': // signed int case 'u': // unsigned int, ignored // support for long numbers - keep them unchanged - if (is_string($value) && preg_match('#[+-]?\d++(e\d+)?$#A', $value)) { + if (is_string($value) && preg_match('#[+-]?\d++(e\d+)?\z#A', $value)) { return $value; } else { return $value === NULL ? 'NULL' : (string) (int) ($value + 0);