How to validate array inputs?

An another example for multi language supported version.

public function __construct(InputFilterPluginManager $inputFilterPluginManager)
{
        $partnersCollection = new CollectionInputFilter();
        $partnersInputFilter = $inputFilterPluginManager->get(PartnersInputFilter::class);
        $partnersInputFilter->add([
            'name' => 'membership_id',
            'required' => true,
            'validators' => [
                ['name' => Uuid::class],
                [
                    'name' => NoRecordExists::class,
                    'options' => [
                        'table'   => 'user_partners',
                        'field'   => 'membership_id',
                        'adapter' => $adapter,
                    ],
                ]
            ],
        ]);   
        $partnersInputFilter->add([
            'name' => 'partner_id',
            'required' => false,
            'validators' => [
                [
                    'name' => InArray::class,
                    'options' => [
                        'haystack' => [1,2],
                    ]
                ],
            ],
        ]);
        $partnersInputFilter->add([
            'name' => 'partner_type',
            'required' => false,
            'validators' => [
                [
                    'name' => InArray::class,
                    'options' => [
                        'haystack' =>['a','b'],
                    ]
                ],
            ],
        ]);
        $partnersInputFilter->add([
            'name' => 'policy_or_member_no',
            'required' => false,
            'validators' => [
                ['name' => Digits::class],
            ],
        ]);
        $partnersCollection->setInputFilter($partnersInputFilter);

        // partners collection
        // 
        $this->add($partnersCollection, 'partners');
}