regex - when - Problema relativo al carattere della pipe di convalida del modello di Laravel



validation error laravel (1)

La risposta, in sostanza, è che non si può usare una pipe se si stanno specificando tutte le regole in una stringa come si sta tentando di fare. La richiesta di pull che m.buettner menzionava era chiusa. Tuttavia, Tayler Otwell ha menzionato un metodo alternativo che è possibile utilizzare: specificare le regole in un array. Un esempio di questo sarebbe:

$rules = array(
    'field' => array('size:5', 'match:/foo|bar/')
);

Usando il framework Laravel ho bisogno di controllare il valore di un campo inviato rispetto a un insieme di valori validi.

Il problema è che Laravel usa il | carattere per separare le regole di convalida appartenenti ad un campo.

Questo non funziona, genera un "preg_match: nessun delimitatore finale" / "trovato":

'my_field' => 'match:/^(value1|value2|different value|yet another)$/'

Come si sfugge il | carattere in questo caso se il \ carattere non aiuta?





laravel