定制 selahattinunlu/php-validator 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

selahattinunlu/php-validator

Composer 安装命令:

composer require selahattinunlu/php-validator

包简介

Simple Php Validator

README 文档

README

Php için oluşturulmuş form doğrulama sınıfı.

Composer İle Kurulum

composer.json dosyasında, require içerisine şu satırı ekleyin:

"selahattinunlu/php-validator": "dev-master"

Yani son hali şu şekilde olmalıdır:

{
    "require": {
        "selahattinunlu/php-validator": "dev-master"
    },
    "minimum-stability": "dev"

}

Ardından terminale, daha önce kurulum yapmadıysanız composer install kurulum yaptıysanız composer update komutunu girin.

Böylece gerekli dosyalar projenize dahil edilecektir.

Composer hakkında daha detaylı bilgi için tıklayın.

Kullanımı

HTML Form

<form method="POST" action="post.php">
   <input type="text" name="username" placeholder="Username" />
   <input type="text" name="email" placeholder="Email" />
   <input type="text" name="age" placeholder="Age" />
   <input type="password" name="password" placeholder="Password" />
   <input type="password" name="password_confirm" placeholder="Password Confirm" />
   <button type="submit">Gönder</button>
</form>

post.php

$validator = new \phpValidator\Validator();

$validator->set($input, array(
   'username' => 'required|min:5|max:10',
   'email'    => 'required|email',
   'age'      => 'required|between:18,30',
   'password' => 'required|confirm',
   'password_confirm' => 'required'
   ), array(
   'username.required'  => 'Kullanıcı adı girmedin!',
   'username.min'       => 'Kullanıcı adı minimum 5 karakterden oluşmalıdır.',
   'username.max'       => 'Kullanıcı adı maximum 10 karakterden oluşmalıdır.',
   'email.required'     => 'Email girmedin',
   'email.email'        => 'Lütfen geçerli bir email adresi giriniz.',
   'age.between'        => 'Yaşınız 18 ile 30 arasında olmalıdır',
   'password.confirm'   => 'Girilen parolalar eşleşmiyor!'
   ));

if ($validator->fails())
   var_dump($validator->errors()->all());

Tanımlı Kurallar

  • required : doldurulması zorunlu
  • email : email formatı
  • url : adres formatı (http://www.adres.com)
  • ip : ip kontrolü
  • numeric : sayısal değer kontrolü
  • min : girilen değerin minimum kaç karakter olacağını kontrol eder
  • max : girilen değerin maximum kaç karakter olacağını kontrol eder
  • between : girilen değerin hangi sayılar arası olacagını kontrol eder
  • confirm : iki değerin eşleşip eşleşmediğini kontrol eder.

Hata Varlığını Kontrol Etmek

Tanımlanan kuralların aksi bir durum gerçekleştiğinde bunu yakalamk için fails() methodu kullanılır.

if ($validator->fails())
    return 'hata var!';
else
    return 'hata yok!';

Hata Mesajları

  • Hata mesajlarının hepsine ulaşmak için
$validator->errors()->all();
  • Oluşan hata mesajlarından ilkine ulaşmak için
$validator->errors()->first();
  • Belli bir hata mesajına ulaşmak için
$validator->errors()->get('username');

Özel Kural Tanımlamak

Bunun için setRule($kuralAdi, $fonksiyon)  methodu kullanılır

Örnek:

$validator->setRule('sehir', function($value) {
    return ($value != 'istanbul') ? false : true;
});

Sonucun false olarak dönmesiyle, tanımladığınız mesaj hata mesajlarına eklenir.

$validator = new \phpValidator\Validator();

$validator->setRule('ozelKuralAdi', function($value) {
    return ($value != 'istanbul') ? false : true;
});

$validator->set($input, array(
    'input' => 'ozelKuralAdi'
), array(
    'input.ozelKuralAdi' => 'Kuralınızın hata mesajı!'
));

if ($validator->fails())
    die(json_encode(array('error' => $validator->errors()->first())));

Dilerseniz özel kuralı şu şekilde tanımlayabilirsiniz:

function fonksiyonAdi ($value) {
    return ($value != 'istanbul') ? false : true;
}

$validator->setRule('ozelKuralAdi', 'fonksiyonAdi');

统计信息

  • 总下载量: 22
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 1
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2014-01-06

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固