2017 © Pedro PelΓ‘ez
 

library carbon-validator

Basic Validator class implemented as a stand alone library. Inspired by Laravel Validation module.

image

htmlburger/carbon-validator

Basic Validator class implemented as a stand alone library. Inspired by Laravel Validation module.

  • Monday, March 26, 2018
  • by htmlburger-git
  • Repository
  • 0 Watchers
  • 0 Stars
  • 1,032 Installations
  • 2 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 4 Versions
  • 9 % Grown

The README.md

TLDR;

PHP Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Π·Π° Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° Π²Ρ…ΠΎΠ΄Π½ΠΈ Π΄Π°Π½Π½ΠΈ., (*1)

 'required',
    'email'   => 'required|email',
    'message' => 'string_min_length:15|string_max_length:255'
));

if ($validator->fails()) {
    $errors = $validator->get_errors();
} else {
    send_mail_notification();
    header('Location: ?success');
}
?>
  1. БъздавамС Π½ΠΎΠ² ΠΎΠ±Π΅ΠΊΡ‚ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ΄Π°Π²Π°ΠΌΠ΅ Π²Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° спорСд ΠΊΠΎΠΈΡ‚ΠΎ трябва Π΄Π° сС Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Ρ‚ Ρ‚Π΅Π·ΠΈ Π΄Π°Π½Π½ΠΈ
    1. Π’Ρ…ΠΎΠ΄Π½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ трябва Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ асоциативСн масив ΠΏΠΎΠ΄ΠΎΠ±Π΅Π½ Π½Π° $_POST
    2. ΠŸΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° Π·Π° валидация са ΠΎΡ‚Π½ΠΎΠ²ΠΎ асоциативСн масив Π² ΠΊΠΎΠΉΡ‚ΠΎ ΠΊΠ»ΡŽΡ‡Π° Π΅ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ Π° стойността: всички ΠΏΡ€Π°Π²ΠΈΠ»Π°, ΠΊΠΎΠΈΡ‚ΠΎ сС отнасят към Π½Π΅Π³ΠΎ
  2. МоТСм Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π΄Π°Π»ΠΈ Π΄Π°Π½Π½ΠΈΡ‚Π΅ са Π²Π°Π»ΠΈΠ΄Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·Π²ΠΈΠΊΠ°ΠΌΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° $validator->fails() ΠΈΠ»ΠΈ $validator->passes()
  3. МоТСм Π΄Π° ΠΈΠ·Π²Π»Π΅Ρ‡Π΅ΠΌ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ списък ΠΎΡ‚ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΎΡ‚ Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€Π° Ρ‡Ρ€Π΅Π· $validator->get_errors()
  4. МоТСм Π΄Π° ΠΏΠΎΠ΄Π°Π²Π°ΠΌΠ΅ спСцифични Π³Ρ€Π΅ΡˆΠΊΠΈ Π·Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΏΠΎΠ»Π΅Ρ‚Π° ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°(ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ)

ДСфиниция Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π°

Всяко ΠΏΠΎΠ»Π΅ сС асоциира с Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°. Π’ΠΎΠΉ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС пуснат ΠΏΠΎΠ΄ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π½Π° string ΠΈΠ»ΠΈ масив. ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° сС ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ стринг Ρ‚Π΅ сС раздСлят ΠΎΡ‚ символа pipe(|) ΠΏΠΎ слСдния Π½Π°Ρ‡ΠΈΠ½:, (*2)

<?php
$validator = new Carbon_Validator($_POST, array(
    // The "customer_email" field is required and must be valid email
    'customer_email' => 'required|email' 
));
?>

ΠšΠΎΠ³Π°Ρ‚ΠΎ сС ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ ΠΊΠ°Ρ‚ΠΎ масив Ρ‚ΠΎΠΉ трябва Π΄Π° Π΅ числово индСксиран ΠΏΠΎ слСдния Π½Π°Ρ‡ΠΈΠ½:, (*3)

<?php
$validator = new Carbon_Validator($_POST, array(
    'email' => array('required', 'email')
));
?>

Всяко ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ само ΠΏΠΎ сСбС си сС ΡΡŠΡΡ‚ΠΎΠΈ ΠΎΡ‚:, (*4)

  1. ИмС(Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ string_min_length)
  2. АргумСнт Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ ΠΎΡ‚ ΠΈΠΌΠ΅Ρ‚ΠΎ с Π΄Π²ΡƒΠ΅Ρ‚ΠΎΡ‡ΠΈΠ΅(Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ :15 ΠΎΡ‚ string_min_length:15)

Налични ΠΏΡ€Π°Π²ΠΈΠ»Π° Π·Π° Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½Π΅

Carbon_Validator ΠΈΠ΄Π²Π° с няколко ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎ ΠΎΡ‚ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»Π°. Π—Π° Π΄Π° Π·Π°Ρ€Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° слСдния статичСн ΠΌΠ΅Ρ‚ΠΎΠ΄:, (*5)

Carbon_Validator::load_package('wordpress');

ΠŸΠ°ΠΊΠ΅Ρ‚ generic (Π·Π°Ρ€Π΅ΠΆΠ΄Π° сС ΠΏΠΎ ΠΏΠΎΠ΄Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅): * required - ΠΏΠΎΠ»Π΅Ρ‚ΠΎ трябва Π΄Π° ΠΈΠΌΠ° някаква стойност * in:value1,value2,value3,... - ΠΏΠΎΠ»Π΅Ρ‚ΠΎ трябва Π΄Π° ΠΈΠΌΠ° Π΅Π΄Π½Π° ΠΎΡ‚ стойноститС ΠΏΠΎΠ΄Π°Π΄Π΅Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π½Π° ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΡ‚ΠΎ * email - Π²Π°Π»ΠΈΠ΄Π΅Π½ email адрСс (Π·Π°Π΄ кулиситС сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° функцията filter_var Π½Π° PHP) * regex:/regex_body/i - Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π° стойността Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ с подадСния рСгулярСн ΠΈΠ·Ρ€Π°Π· * numeric - ΠΏΡ€Π΅ΠΊΠ°Ρ€Π²Π° стойността ΠΏΡ€Π΅Π· Π²Π³Ρ€Π°Π΄Π΅Π½Π°Ρ‚Π° Π² PHP is_numeric функция * string_min_length:value - ΡƒΠΊΠ°Π·Π²Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° дълТина Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ * string_max_length:value - ΡƒΠΊΠ°Π·Π²Π° максимална дълТина Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ * numeric_min:value - ΡƒΠΊΠ°Π·Π²Π° ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½Π° числова стойност Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ * numeric_max:value - ΡƒΠΊΠ°Π·Π²Π° максимална числова стойност Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ * url - Π²Π°Π»ΠΈΠ΄Π΅Π½ URL адрСс(Π·Π°Π΄ кулиситС сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° функцията filter_var Π½Π° PHP) * file:ext,ext2 - увСрява сС Ρ‡Π΅ Π΅ ΠΊΠ°Ρ‡Π΅Π½ Ρ„Π°ΠΉΠ» с ΠΎΠΏΠ΅Π΄Π΅Π»Π΅Π½ Ρ‚ΠΈΠΏ. НС сС ΠΏΡ€Π°Π²ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° самия extension Π½Π° Ρ„Π°ΠΉΠ°, Π° Π½Π° MIME Ρ‚ΠΈΠΏΠ° ΠΌΡƒ * filesize:2M - увСрява сС Ρ‡Π΅ Π΅ ΠΊΠ°Ρ‡Π΅Π½ Ρ„Π°ΠΉΠ» ΠΏΠΎΠ΄ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€(2MB). ΠŸΡ€ΠΈΠ΅ΠΌΠ°Ρ‚ сС ΠΈ Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΈ със суфикс K(ΠΎΡ‚ KB) * email_exists - провСрява Π΄Π°Π»ΠΈ Π²Π΅Ρ‡Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» с Ρ‚ΠΎΠ·ΠΈ email адрСс * user_exists - провСрява Π΄Π°Π»ΠΈ Π²Π΅Ρ‡Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» с Ρ‚ΠΎΠ·ΠΈ username, (*6)

ΠŸΠ°ΠΊΠ΅Ρ‚ wordpress: * wp_nonce:action_name - Π’Π°Π»ΠΈΠ΄ΠΈΡ€Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ Ρ‡Ρ€Π΅Π· wp_verify_nonce() * wp_post:post_type1,post_type2 - Π’Π°Π»ΠΈΠ΄ΠΈΡ€Π° ID Π½Π° пост Ρ‡Ρ€Π΅Π· get_post(). По ΠΈΠ·Π±ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ 1 ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ пост Ρ‚ΠΈΠΏΠΎΠ²Π΅ ΠΊΠ°Ρ‚ΠΎ изискванС Π·Π° валидация Π½Π° поста * wp_user:role_or_capability1,role_or_capability2 - Π’Π°Π»ΠΈΠ΄ΠΈΡ€Π° ID Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» Ρ‡Ρ€Π΅Π· get_userdata(). По ΠΈΠ·Π±ΠΎΡ€ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ 1 ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ Ρ€ΠΎΠ»ΠΈ/Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΊΠ°Ρ‚ΠΎ изискванС Π·Π° валидация Π½Π° потрСбитСля, (*7)


Store / Load

Π˜ΠΌΠ°Ρ‚Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° Π·Π°ΠΏΠ°Π·Π²Π°Ρ‚Π΅ инстанции Π½Π° Carbon_Validator ΠΈ Π΄Π° Π³ΠΈ Π·Π°Ρ€Π΅Π΄ΠΈΡ‚Π΅ ΠΏΠΎ-късно., (*8)

Carbon_Validator::store('some_id', $validator);

$validator = Carbon_Validator::load('some_id');

Example:

functions.php, (*9)

 "required",
        "contact_email" => "required|email",
        "contact_message" => "required",
    ));

    // Store the validator, so we can use it in the front-end
    Carbon_Validator::store('contact_form' , $validator);

    $success = $validator->passes();

    if ($success) {
        // Send email notification, or whatever. 
    }
}
?>

templates/contact.php, (*10)


    <?php if ($validator->passes()): ?>
        <p class="alert alert-success"><?php _e('Your message has been sent.', 'crb'); ?></p> 
    <?php elseif ($errors = $validator->get_errors()): ?>
        <div class="alert alert-danger">
            <ul>
                <?php foreach ($errors as $error): ?>
                    <li><?php echo esc_html($error) ?></li>
                <?php endforeach ?>
            </ul>
        </div>
     <?php endif ?>


Custom Error Messages

Автоматично Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½ΠΈΡ‚Π΅ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΎΠ½Π½ΠΈ Π³Ρ€Π΅ΡˆΠΊΠΈ Π²ΡŠΡ€ΡˆΠ°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π° Π² ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ситуации. Понякога ΠΎΠ±Π°Ρ‡Π΅ сС Π½Π°Π»Π°Π³Π° Π΄Π° сС добавят ΠΈ custom error messages. Π’ΠΎΠ²Π° сС ΠΏΡ€Π°Π²ΠΈ Ρ‡Ρ€Π΅Π· 3Ρ‚ΠΈ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ Π½Π° конструктора Π½Π° класа Validator:, (*11)

 'required',
    'email'   => 'required|email',
    'message' => 'string_min_length:15|string_max_length:255'
);

$error_messages = array(
    'name.required' => 'We need your full name in order to contact you later. ',
    'message.string_min_length' => 'Your message is too short -- please enter more than 15 characters. ',
    'message.string_max_length' => 'Your message is too long -- please enter less than 255 characters. '
);

$validator = new Carbon_Validator($_POST, $rules, $error_messages);
?>

Global default error messages

Π—Π° Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ ΠΏΡ€Π΅Π·Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π΅Π΄Π½ΠΎ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ Π·Π° всички инстанции Π½Π° Carbon_Validator, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ слСдния статичСн ΠΌΠ΅Ρ‚ΠΎΠ΄:, (*12)

// Carbon_Validator::register_default_error_message($rule, $message);
Carbon_Validator::register_default_error_message('required', 'You should really fill out the "%1$s" field.');

Ако Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅, %1$s Ρ‰Π΅ бъдС замСстСно с user-friendly ΠΈΠΌΠ΅ Π½Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ сС Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°., (*13)

Π’ΠΎΠ·ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΡΡŠΡ‰ΠΎ Π²ΠΈ позволява Π΄Π° ΠΏΡ€Π΅ΠΌΠΈΠ½Π΅Ρ‚Π΅ Π΄Π°Π΄Π΅Π½ΠΎ ΡΡŠΠΎΠ±Ρ‰Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π· функция Π·Π° ΠΏΡ€Π΅Π²Π΅ΠΆΠ΄Π°Π½Π΅ ( __(), _Π΅() ΠΈ Ρ‚.Π½. Π² WordPress), (*14)


Custom Validation Rules

Π’Π³Ρ€Π°Π΄Π΅Π½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π½Π΅ Π²ΠΈΠ½Π°Π³ΠΈ са Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈ. ΠšΠΎΠ³Π°Ρ‚ΠΎ трябва Π΄Π° сС Π½Π°ΠΏΡ€Π°Π²ΠΈ ΠΏΠΎ-спСцифична валидация ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π½Π°ΠΏΡ€Π°ΠΈΠΌ слСдното:, (*15)

 "John Doe",
#   "ip-address" => "192.168.2.54",
# );

$rules = array(
    'ip-address' => 'required|internal_ip',
);

$messages = array(
    'ip-address.internal_ip' => 'Please enter valid internal IP addres. ',
);

$validator = new Carbon_Validator($_POST, $rules, $messages);
?>

Π Π°Π·ΡˆΠΈΡ€ΡΠ²Π°Π½Π΅Ρ‚ΠΎ става Ρ‡Ρ€Π΅Π· статичния ΠΌΠ΅Ρ‚ΠΎΠ΄ Carbon_Validator::extend($rule_name, $callback). Π‘Π»Π΅Π΄ Ρ€Π°Π·ΡˆΠΈΡ€ΡΠ²Π°Π½Π΅, $rule_name ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ»Π·Π²Π° във Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΠΎΠ½Π½ΠΈΡ‚Π΅ ΠΏΡ€Π°Π²ΠΈΠ»Π° Π½Π° Ρ„ΠΎΡ€ΠΌΠΈΡ‚Π΅., (*16)

Π‘Π°ΠΌΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° сС сС ΠΏΡ€Π΅Π΄Π°Π²Π°Ρ‚ към Carbon_Validator класа Ρ‡Ρ€Π΅Π· Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° спСциално ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Carbon_Validator_ValidationError., (*17)

Custom Validation Rule Callback

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ Π½Π° callback-Π° са:, (*18)

function my_custom_validation_rule_callback($value, $parameters, $field, $validator_instance) { };
  1. $value - стойността, която трябва Π΄Π° сС Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°
  2. $parameters - масив ΠΎΡ‚ стойности ΠΏΠΎΠ΄Π°Π΄Π΅Π½ΠΈ ΠΊΠ°Ρ‚ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ Π·Π° ΠΏΡ€Π°Π²ΠΈΠ»ΠΎΡ‚ΠΎ (Π² списък Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ със Π·Π°ΠΏΠ΅Ρ‚Π°ΠΈ)
  3. $field - ΠΏΠΎΠ»Π΅Ρ‚ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ сС Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°
  4. $validator_instance - рСфСрСнция към инстанцията Π½Π° Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€Π°, която Π²ΠΈΠΊΠ° Ρ‚ΠΎΠ·ΠΈ callback

Π’Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅

 Carbon_FileUpload::make($_FILES['avatar'])
));

$validator = new Carbon_Validator($data, array(
    'name' => 'required',
    'email' => 'required|email',
    'message' => 'required',
    'avatar' => 'file:jpg|filesize:1M',
));

?>

НаличнитС Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ Π·Π° Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΎΡ‚Ρ€ΠΊΡ‚ΠΈ във validator/mime-types.php., (*19)


Π’Π°Π»ΠΈΠ΄ΠΈΡ€Π°Π½Π΅ Π½Π° масиви

ΠšΠΎΠ³Π°Ρ‚ΠΎ ΠΈΠΌΠ°Ρ‚Π΅ масиви Π² $_POST ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ Π½Π° ΠΊΠ°Ρ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½ΠΈ скоби Π·Π° Π΄Π° ΠΎΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π΄ΠΎ Π½Π΅Π³ΠΎ ΠΏΠΎ слСдния Π½Π°Ρ‡ΠΈΠ½:, (*20)

 array(
        'first_name' => 'John',
        'last_name' => 'Doe',
        'email' => 'johndoe@example.com',
        'address' => array(
            'street' => array(
                'number' => "123"
            )
        )
    )
);
$validator = new Carbon_Validator($input, array(
    'user[first_name]' => 'required',
    'user[last_name]' => 'required|string_min_length:2',
    'user[email]' => 'email',
    'user[address][street][number]' => 'required',
));

var_dump($validator->passes());
?>

Π”ΠΈΠ·Π°ΠΉΠ½Π° Π½Π° класа Π΅ взаимстван ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Laravel., (*21)

The Versions

26/03 2018

dev-master

9999999-dev https://bitbucket.org/htmlburger/carbon-validator

Basic Validator class implemented as a stand alone library. Inspired by Laravel Validation module.

  Sources   Download

GPL-2.0

The Development Requires

21/10 2016

v1.2.0

1.2.0.0

Basic Validator class implemented as a stand alone library. Inspired by Laravel Validation module.

  Sources   Download

GPL-2.0

14/09 2016

v1.1.0

1.1.0.0

Basic Validator class implemented as a stand alone library. Inspired by Laravel Validation module.

  Sources   Download

GPL-2.0

27/06 2016

v1.0.0

1.0.0.0

Basic Validator class implemented as a stand alone library. Inspired by Laravel Validation module.

  Sources   Download

GPL-2.0