# wpide/3.5.9/vendor/rakit/validation/src/Rules/Defaults.php

WPIDE – File Manager &amp; Code Editor, version 3.5.9. 51 lines.

- Page: https://pluginprobe.com/plugins/wpide/3.5.9/code/vendor/rakit/validation/src/Rules/Defaults.php
- Raw: https://pluginprobe.com/plugins/wpide/3.5.9/raw/vendor/rakit/validation/src/Rules/Defaults.php
- Modified: 2022-07-30T20:33:10+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/wpide/3.5.9/code/vendor/rakit/validation/src/Rules/Defaults.php#L10-L20`.

```php
<?php

namespace Rakit\Validation\Rules;

use Rakit\Validation\Rule;
use Rakit\Validation\Rules\Interfaces\ModifyValue;

class Defaults extends Rule implements ModifyValue
{

    /** @var string */
    protected $message = "The :attribute default is :default";

    /** @var array */
    protected $fillableParams = ['default'];

    /**
     * Check the $value is valid
     *
     * @param mixed $value
     * @return bool
     */
    public function check($value): bool
    {
        $this->requireParameters($this->fillableParams);

        $default = $this->parameter('default');
        return true;
    }

    /**
     * {@inheritDoc}
     */
    public function modifyValue($value)
    {
        return $this->isEmptyValue($value) ? $this->parameter('default') : $value;
    }

    /**
     * Check $value is empty value
     *
     * @param mixed $value
     * @return boolean
     */
    protected function isEmptyValue($value): bool
    {
        $requiredValidator = new Required;
        return false === $requiredValidator->check($value, []);
    }
}

```
