My Project
総合概要
名前空間
クラス
ファイル
ファイル一覧
src
Task
ValueObject
TaskDetail.php
[詳解]
1
<?php
2
declare(strict_types=1);
3
4
namespace
Todo\Task\ValueObject
;
5
6
use
InvalidArgumentException
;
7
use
Todo\Shared\Foundation\ValueObject\StringValue
;
8
9
final
class
TaskDetail
extends
StringValue
10
{
11
const
MAX_LENGTH
= 1000;
12
13
public
function
__construct
(
string
$value
)
14
{
15
$this->
validate
($value);
16
$this->value =
$value
;
17
}
18
19
protected
function
validate
(
string
$value
): void
20
{
21
if
(mb_strlen($value) > self::MAX_LENGTH) {
22
throw
new
InvalidArgumentException
(sprintf(
'%s must be %s length.'
, __CLASS__, self::MAX_LENGTH));
23
}
24
}
25
}
StringValue
Todo\Task\ValueObject
Definition:
TaskCost.php:4
Todo\Task\ValueObject\TaskDetail\validate
validate(string $value)
Definition:
TaskDetail.php:19
Todo\Task\ValueObject\TaskDetail\MAX_LENGTH
const MAX_LENGTH
Definition:
TaskDetail.php:11
Todo\Task\ValueObject\TaskDetail\__construct
__construct(string $value)
Definition:
TaskDetail.php:13
Todo\Task\ValueObject\TaskDetail
Definition:
TaskDetail.php:9
Todo\Shared\Foundation\ValueObject\StringValue\$value
string $value
Definition:
StringValue.php:13
Todo\Shared\Foundation\ValueObject\StringValue
Definition:
StringValue.php:6
InvalidArgumentException
構築:
1.8.11