@SmilerOFF

Как сконвертировать правила валидации LIVR для php?

Решил попробовать библиотеки валидации по синаксису валидации LIVR livr-spec.org
Смысл в том, что одни и те-же правила должны работать и во фронтенде и на бэкенде. Подкупила мысль о том, что один раз задам правила в синтаксисе
{
    name: 'required',
    email: ['required', 'email'],
    gender: { one_of: ['male', 'female'] },
    phone: {max_length: 10},
    password: ['required', {min_length: 10} ],
    password2: { equal_to_field: 'password' }
}

А дальше библиотека для JS https://github.com/koorchik/js-validator-livr сама все сделает (и она правда делает).
А библиотека для php https://github.com/WebbyLab/php-validator-livr разберется с серверной проверкой (и она тоже работает).
И вот ума не приложу, как исходный код правил валидации конвертировать к такому, чтобы понимала библиотека на пхп. Ей надо их скормить в таком виде:
$validator  = new Validator\LIVR( [
        'name'      =>  'required',
        'email'     =>  [ 'required', 'email'],
        'gender'    =>  [ 'one_of'     => ['male', 'female'] ],
        'phone'     =>  [ 'max_length' => 10 ],
        'password'  =>  [ 'required', ['min_length' => 10] ],
        'password2' =>  [ 'equal_to_field' => 'password' ]
    ] );

Думал, что это json, а похоже что нет.
  • Вопрос задан
  • 162 просмотра
Решения вопроса 1
@SmilerOFF Автор вопроса
Если кому потребуется в будущем, то это Json5.
Надо гуглить пхп библиотеку для работы с json5.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Arekus
@Arekus
new Validator\LIVR(json_explode($livr_for_js, 1))
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы