Skip to content

Validator::valid() returning unvalidated fields #55755

@bluesheep100

Description

@bluesheep100

Laravel Version

12.12.0

PHP Version

8.4.7

Database Driver & Version

No response

Description

Expected Behaviour

Validator::valid() returns all validated valid fields like Validator::validate()/Validator::validated(), without throwing \Illuminate\Validation\ValidationException

Actual Behaviour

Validator::valid() returns fields that are not explicitly invalid by an existing rule as in:

dd(\Validator::make(['bad_thing' => '<html>', 'foo' => 'bar'], ['foo' => 'required|string'])->valid());
// returns ['bad_thing' => '<html>', 'foo' => 'bar'] instead of ['foo' => 'bar']

Steps To Reproduce

// Create a Validator instance:
$validator = \Validator::make(
    ['bad_thing' => '<html>', 'foo' => 'bar'],
    ['foo' => 'required|string'],
);
// Dump results:
dd($validator->validated(), $validator->valid());

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions