seymenkonuk/validator 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

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

seymenkonuk/validator

Composer 安装命令:

composer require seymenkonuk/validator

包简介

Modern PHP uygulamaları için geliştirilmiş şema tabanlı veri doğrulama kütüphanesi. Esnek kural sistemi, iç içe veri yapısı desteği ve zincirlenebilir API ile güçlü ve ölçeklenebilir validasyon çözümleri sunar.

README 文档

README

Modern PHP uygulamaları için geliştirilmiş şema tabanlı veri doğrulama kütüphanesi.

Açıklama

Modern PHP uygulamaları için geliştirilmiş fluent API tabanlı, şema odaklı bir veri doğrulama kütüphanesidir. Karmaşık veri yapılarını (nested object, array, primitive tipler) okunabilir ve zincirlenebilir bir API ile tanımlamanıza olanak sağlar. Yerleşik kuralların yanı sıra genişletilebilir yapı sunar ve doğrulama hatalarını çoklu dil desteği ile yönetebilir. Framework bağımsızdır ve her PHP projesine kolayca entegre edilebilir.

Özellikler

  • Fluent API
  • Şema tabanlı doğrulama
  • İç içe nesne (nested object) desteği
  • Dizi (array) doğrulama desteği
  • Varsayılan değerler
  • Güçlü tip doğrulama
  • Tarih ve zaman doğrulamaları
  • Çoklu dil (i18n) desteği
  • Özelleştirilebilir çeviri sistemi
  • Detaylı hata raporlama
  • Framework bağımsız kullanım
  • PHPUnit ile test edilmiş
  • PHPStan desteği

Kurulum

composer require seymenkonuk/validator

Yapılandırma

Yerelleştirme

$validator = new Validator(new Translator(
    new FileLoader(),
    "tr",
));

Özel Dil Ekleme

Kütüphanede şu an yalnızca iki dil bulunmaktadır. Bu diller haricinde bir dil kullanmak isterseniz kendi dilinizi ekleyebilirsiniz.

$validator = new Validator(new Translator(
    new FileLoader(__DIR__ . "/lang"),
    "tr",
));

Örnek Dil Dosyası

return [
    "required" => "Bu alan zorunludur.",
    "string" => "Bu alan metin olmalıdır.",
    "email" => "Bu alan geçerli bir e-posta olmalıdır.",
    'min' => 'Bu alan en az {value} olmalıdır!',
    // ve daha fazlası...
];

Kullanım

Şema Oluşturma

$schema = $validator->object()->schema([
    "username" => $validator->field()
        ->string()
        ->min(2)
        ->max(10)
        ->required(),
    "email" => $validator->field()
        ->email()
        ->required(),
    "is_agreed" => $validator->field()
        ->bool()
        ->true()
        ->required(),
]);

Doğrulama

$result = $schema->validate([
    "username" => "seymenkonuk",
    "email" => "konukrecepseymen@gmail.com",
    "is_agreed" => true,
]);

if ($result->passed()) {
    var_dump($result->validated());
}

else {
// if ($result->failed()) {
    var_dump($result->errors());
}

Nested Şema

$schema = $validator->object()->schema([
    "parent" => $validator->object()->schema([
        "name" => $validator->field()->string()->required(),
        "surname" => $validator->field()->string()->required(),
    ])->required(),
]);

Dizi Doğrulama

$schema = $validator->object()->schema([
    "hobbies" => $validator->array()
        ->items($validator->field()->string())
        ->minItems(0)
        ->maxItems(10)
        ->default([]),
]);

Lisans

Bu proje MIT Lisansı ile lisanslanmıştır.

统计信息

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

GitHub 信息

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

其他信息

  • 授权协议: MIT
  • 更新时间: 2026-06-10