Skip to content

Commit eacb494

Browse files
authored
[10.x] Backport 11.x PHP 8.4 fix for str_getcsv deprecation (#54074)
* Backport 11.x PHP 8.4 compat fix to str_getcsv * Fix indent
1 parent 9cc32b5 commit eacb494

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

src/Illuminate/Validation/ValidationRuleParser.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -280,7 +280,7 @@ protected static function parseStringRule($rule)
280280
*/
281281
protected static function parseParameters($rule, $parameter)
282282
{
283-
return static::ruleIsRegex($rule) ? [$parameter] : str_getcsv($parameter);
283+
return static::ruleIsRegex($rule) ? [$parameter] : str_getcsv($parameter, escape: '\\');
284284
}
285285

286286
/**

tests/Validation/ValidationUniqueRuleTest.php

+2-2
Original file line numberDiff line numberDiff line change
@@ -57,8 +57,8 @@ public function testItCorrectlyFormatsAStringVersionOfTheRule()
5757
$rule->ignore('Taylor, Otwell"\'..-"', 'id_column');
5858
$rule->where('foo', 'bar');
5959
$this->assertSame('unique:table,column,"Taylor, Otwell\"\\\'..-\"",id_column,foo,"bar"', (string) $rule);
60-
$this->assertSame('Taylor, Otwell"\'..-"', stripslashes(str_getcsv('table,column,"Taylor, Otwell\"\\\'..-\"",id_column,foo,"bar"')[2]));
61-
$this->assertSame('id_column', stripslashes(str_getcsv('table,column,"Taylor, Otwell\"\\\'..-\"",id_column,foo,"bar"')[3]));
60+
$this->assertSame('Taylor, Otwell"\'..-"', stripslashes(str_getcsv('table,column,"Taylor, Otwell\"\\\'..-\"",id_column,foo,"bar"', escape: '\\')[2]));
61+
$this->assertSame('id_column', stripslashes(str_getcsv('table,column,"Taylor, Otwell\"\\\'..-\"",id_column,foo,"bar"', escape: '\\')[3]));
6262

6363
$rule = new Unique('table', 'column');
6464
$rule->ignore(null, 'id_column');

0 commit comments

Comments
 (0)