PluginProbe
WPIDE – File Manager & Code Editor / 3.5.9
WPIDE – File Manager & Code Editor v3.5.9
3.5.9 3.5.8 3.5.7 2.0.14 2.0.15 2.0.16 2.0.2 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.1 2.2 2.3 2.3.1 2.3.2 2.4.0 2.5 2.6 3.0 3.1 3.2 3.3 All 55 releases
wpide / vendor / rakit / validation / src / Rules / Required.php

Required.php in WPIDE – File Manager & Code Editor 3.5.9, at vendor/rakit/validation/src/Rules/Required.php

52 lines 1.1 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Rakit\Validation\Rules;
4
5 use Rakit\Validation\Rule;
6
7 class Required extends Rule
8 {
9 use Traits\FileTrait;
10
11 /** @var bool */
12 protected $implicit = true;
13
14 /** @var string */
15 protected $message = "The :attribute is required";
16
17 /**
18 * Check the $value is valid
19 *
20 * @param mixed $value
21 * @return bool
22 */
23 public function check($value): bool
24 {
25 $this->setAttributeAsRequired();
26
27 if ($this->attribute and $this->attribute->hasRule('uploaded_file')) {
28 return $this->isValueFromUploadedFiles($value) and $value['error'] != UPLOAD_ERR_NO_FILE;
29 }
30
31 if (is_string($value)) {
32 return mb_strlen(trim($value), 'UTF-8') > 0;
33 }
34 if (is_array($value)) {
35 return count($value) > 0;
36 }
37 return !is_null($value);
38 }
39
40 /**
41 * Set attribute is required if $this->attribute is set
42 *
43 * @return void
44 */
45 protected function setAttributeAsRequired()
46 {
47 if ($this->attribute) {
48 $this->attribute->setRequired(true);
49 }
50 }
51 }
52