PHPackages                             jp3cki/yii2-extra-validator - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Validation &amp; Sanitization](/categories/validation)
4. /
5. jp3cki/yii2-extra-validator

ActiveYii2-extension[Validation &amp; Sanitization](/categories/validation)

jp3cki/yii2-extra-validator
===========================

Validators for Yii2

v4.0.1(1y ago)1592MITPHPPHP &gt;= 8.0CI failing

Since Feb 28Pushed 1y ago1 watchersCompare

[ Source](https://github.com/fetus-hina/yii2-extra-validator)[ Packagist](https://packagist.org/packages/jp3cki/yii2-extra-validator)[ RSS](/packages/jp3cki-yii2-extra-validator/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (7)Versions (15)Used By (0)

yii2-extra-validator
====================

[](#yii2-extra-validator)

[![License](https://camo.githubusercontent.com/4d506fab55b210a62c45f6a78b02c4df907e8119b0fab522f3ba76cfb78b5240/68747470733a2f2f706f7365722e707567782e6f72672f6a7033636b692f796969322d65787472612d76616c696461746f722f6c6963656e73652e737667)](https://packagist.org/packages/jp3cki/yii2-extra-validator)[![Latest Stable Version](https://camo.githubusercontent.com/6ef1618396f871daf69f6ad3e9e1105ebdc9deca80dc3731e97b0f508b608daa/68747470733a2f2f706f7365722e707567782e6f72672f6a7033636b692f796969322d65787472612d76616c696461746f722f762f737461626c652e737667)](https://packagist.org/packages/jp3cki/yii2-extra-validator)

Requirements
------------

[](#requirements)

- PHP 8.0 or later
- Yii framework 2.0
- Some php extensions is required:
    - PCRE extension (also required by Yii)
    - mbstring extension (also required by Yii)
    - intl extension (also required by Yii in some action)

Install
-------

[](#install)

1. Set up [Composer](https://getcomposer.org/), the de facto standard package manager.
2. Set up your new Yii app if needed.
3. `php composer.phar require jp3cki/yii2-extra-validator`

Usage
-----

[](#usage)

This package includes these validators:

- [AvailableUrlValidator](#availableurlvalidator)
- [ConvertCharacterWidthFilterValidator](#convertcharacterwidthfiltervalidator)
- [HiraganaValidator](#hiraganavalidator)
- [IdnToPunycodeFilterValidator](#idntopunycodefiltervalidator)
- [KatakanaValidator](#katakanavalidator)
- [ReCaptchaValidator](#recaptchavalidator)
- [StrictUrlValidator](#stricturlvalidator)
- [TwitterAccountValidator](#twitteraccountvalidator)
- [ZenginNameFilterValidator](#zenginnamefiltervalidator)
- [ZenginNameValidator](#zenginnamevalidator)

### AvailableUrlValidator

[](#availableurlvalidator)

`AvailableUrlValidator` will check that the URL is accessible.

Validation will failed if remote server returns 4xx(client error) or 5xx(server error).

Model class example:

```
namespace app\models;

use yii\base\Model;
use jp3cki\yii2\validators\AvailableUrlValidator;
// use jp3cki\yii2\validators\StrictUrlValidator;

class YourCustomForm extends Model
{
    public $url;

    public function rules()
    {
        return [
            [['url'], 'url', 'enableIDN' => true], //  true]
            [['url'], AvailableUrlValidator::className()],
        ];
    }
}
```

### ConvertCharacterWidthFilterValidator

[](#convertcharacterwidthfiltervalidator)

`ConvertCharacterWidthFilterValidator` is a filter validator that provides normalization of character width.

This validator may useful for Japanese input.

このフィルタバリデータを利用すると、半角カタカナの入力を全角に変換したり、全角英数を半角英数に変換したり、カタカナをひらがなに変換したりできます。

[HiraganaValidator](#hiraganavalidator)や[KatakanaValidator](#katakanavalidator)と組み合わせて使用すると便利かもしれません。

Model class example:

```
namespace app\models;

use yii\base\Model;
use jp3cki\yii2\validators\ConvertCharacterWidthFilterValidator;

class YourCustomForm extends Model
{
    public $value;

    public function rules()
    {
        return [
            [['value'], ConvertCharacterWidthFilterValidator::className(),
                'option' => 'asKV', // mb_convert_kana() 関数の変換書式を指定します。デフォルトは asKV です。
                'charset' => 'UTF-8', // 必要であれば文字コードを指定します。デフォルトは Yii::app()->charset で、通常 UTF-8 です。
            ],
        ];
    }
}
```

### HiraganaValidator

[](#hiraganavalidator)

`HiraganaValidator` validates value that input is [hiragana](http://en.wikipedia.org/wiki/Hiragana)-only string.

このバリデータは入力がひらがなのみで構成されていることを検証します。名前のふりがな入力等に利用できます。

カタカナの検証を行いたい場合は[KatakanaValidator](#katakanavalidator)を使用します。

Model class example:

```
namespace app\models;

use yii\base\Model;
use jp3cki\yii2\validators\HiraganaValidator;

class YourCustomForm extends Model
{
    public $value;

    public function rules()
    {
        return [
            [['value'], HiraganaValidator::className(),
                'acceptSpace' => false,  // スペース（半角・全角）を許容する場合は true を設定します。デフォルトは false です。
                'charset' => 'UTF-8', // 必要であれば文字コードを指定します。デフォルトは Yii::app()->charset で、通常 UTF-8 です。
            ],
        ];
    }
}
```

### IdnToPunycodeFilterValidator

[](#idntopunycodefiltervalidator)

`IdnToPunycodeFilterValidator` is a filter validator that provides convert IDN to Punycoded domain name.

This validator may useful when you store URL to the database in ASCII charset.

Model class example:

```
namespace app\models;

use yii\base\Model;
use jp3cki\yii2\validators\IdnToPunycodeFilterValidator;
// use jp3cki\yii2\validators\StrictUrlValidator;

class YourCustomForm extends Model
{
    public $url;

    public function rules()
    {
        return [
            [['url'], 'url', 'enableIDN' => true], //  true]
            [['url'], IdnToPunycodeFilterValidator::className()],
        ];
    }
}
```

Controller class example:

```
public function actionUpdate()
{
    $model = new YourCustomForm();
    $model->url = 'http://ドメイン名例.JP/'; // user input
    if ($model->validate()) {
        // $model->url is now 'http://xn--eckwd4c7cu47r2wf.jp/'

        // $dbModel->url = $model->url;
        // $dbModel->save();
    }
}
```

### KatakanaValidator

[](#katakanavalidator)

`KatakanaValidator` validates value that input is [katakana](http://en.wikipedia.org/wiki/Katakana)-only string.

このバリデータは入力がカタカナのみで構成されていることを検証します。名前のフリガナ入力等に利用できます。

ひらがなの検証を行いたい場合は[HiraganaValidator](#hiraganavalidator)を使用します。

Model class example:

```
namespace app\models;

use yii\base\Model;
use jp3cki\yii2\validators\KatakanaValidator;

class YourCustomForm extends Model
{
    public $value;

    public function rules()
    {
        return [
            [['value'], KatakanaValidator::className(),
                'acceptSpace' => false,  // スペース（半角・全角）を許容する場合は true を設定します。デフォルトは false です。
                'charset' => 'UTF-8', // 必要であれば文字コードを指定します。デフォルトは Yii::app()->charset で、通常 UTF-8 です。
            ],
        ];
    }
}
```

### ReCaptchaValidator

[](#recaptchavalidator)

`ReCaptchaValidator` validates reCAPTCHA (API ver.2) input.

First, you must visit [reCAPTCHA website](https://www.google.com/recaptcha/intro/index.html) and create your keys.

After reCAPTCHA registration, you can get `Site key` and `Secret key`.

Open `@app/config/params.php` file and add these keys like below:

```
