From 770aeda0694e5873a0418e110216ebd105e3e77e Mon Sep 17 00:00:00 2001 From: Mohamed Said Date: Sat, 15 Oct 2016 17:23:36 +0300 Subject: [PATCH 1/3] Use getPdo() to make sure we get an actual PDO instance instead of a closure (#15928) --- src/Illuminate/Database/Connection.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/Illuminate/Database/Connection.php b/src/Illuminate/Database/Connection.php index cd8a8a685fea..6ad94ef93595 100755 --- a/src/Illuminate/Database/Connection.php +++ b/src/Illuminate/Database/Connection.php @@ -603,7 +603,7 @@ public function beginTransaction() { if ($this->transactions == 0) { try { - $this->pdo->beginTransaction(); + $this->getPdo()->beginTransaction(); } catch (Exception $e) { if ($this->causedByLostConnection($e)) { $this->reconnect(); @@ -613,7 +613,7 @@ public function beginTransaction() } } } elseif ($this->transactions >= 1 && $this->queryGrammar->supportsSavepoints()) { - $this->pdo->exec( + $this->getPdo()->exec( $this->queryGrammar->compileSavepoint('trans'.($this->transactions + 1)) ); } From 2db4a9d0c9f6b8a50514ed07f2edc84f07965a8c Mon Sep 17 00:00:00 2001 From: Duilio Palacios Date: Sat, 15 Oct 2016 15:26:32 +0100 Subject: [PATCH 2/3] New object syntax for the rule in (#15923) --- src/Illuminate/Validation/Rule.php | 11 ++++++++ src/Illuminate/Validation/Rules/In.php | 34 +++++++++++++++++++++++ tests/Validation/ValidationInRuleTest.php | 18 ++++++++++++ 3 files changed, 63 insertions(+) create mode 100644 src/Illuminate/Validation/Rules/In.php create mode 100644 tests/Validation/ValidationInRuleTest.php diff --git a/src/Illuminate/Validation/Rule.php b/src/Illuminate/Validation/Rule.php index e2501194171d..bd2e03046ee4 100644 --- a/src/Illuminate/Validation/Rule.php +++ b/src/Illuminate/Validation/Rule.php @@ -27,6 +27,17 @@ public static function exists($table, $column = 'NULL') return new Rules\Exists($table, $column); } + /** + * Get a in constraint builder instance. + * + * @param array $values + * @return \Illuminate\Validation\Rules\In + */ + public static function in(array $values) + { + return new Rules\In($values); + } + /** * Get a unique constraint builder instance. * diff --git a/src/Illuminate/Validation/Rules/In.php b/src/Illuminate/Validation/Rules/In.php new file mode 100644 index 000000000000..e3a339234b89 --- /dev/null +++ b/src/Illuminate/Validation/Rules/In.php @@ -0,0 +1,34 @@ +values = $values; + } + + /** + * Convert the rule to a validation string. + * + * @return string + */ + public function __toString() + { + return 'in:'.implode(',', $this->values); + } +} diff --git a/tests/Validation/ValidationInRuleTest.php b/tests/Validation/ValidationInRuleTest.php new file mode 100644 index 000000000000..8b57a8312654 --- /dev/null +++ b/tests/Validation/ValidationInRuleTest.php @@ -0,0 +1,18 @@ +assertEquals('in:Laravel,Framework,PHP', (string) $rule); + + $rule = Rule::in([1, 2, 3, 4]); + + $this->assertEquals('in:1,2,3,4', (string) $rule); + } +} From 4de2ece117b76fc1b4c2a243a9396f18b038ba50 Mon Sep 17 00:00:00 2001 From: Taylor Otwell Date: Sat, 15 Oct 2016 09:31:15 -0500 Subject: [PATCH 3/3] an --- src/Illuminate/Validation/Rule.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Illuminate/Validation/Rule.php b/src/Illuminate/Validation/Rule.php index bd2e03046ee4..ff02ea2a8a89 100644 --- a/src/Illuminate/Validation/Rule.php +++ b/src/Illuminate/Validation/Rule.php @@ -28,7 +28,7 @@ public static function exists($table, $column = 'NULL') } /** - * Get a in constraint builder instance. + * Get an in constraint builder instance. * * @param array $values * @return \Illuminate\Validation\Rules\In