既存システムの改修を行う際にメールアドレスのチェックを強化したいけど、
フレームワークを使ってなかったので、composer で Symfony のバリデーションだけ入れて対応。
まずはコンポーネントを追加
$ composer require symfony/validator
※ 別要件で、 /vendor/autoload.php は読み込み済み。
後は、
http://symfony.com/doc/current/validation.html
を見ながら下の感じで。
use Symfony\Component\Validator\Validation;
use Symfony\Component\Validator\Constraints\Email;
$validator = Validation::createValidator();
$violations = $validator->validate($email, array(
new Email(array(
'message' => 'The email "{{ value }}" is not a valid email.',
'strict' => true,
'checkHost' => true,
)),
));
// エラー有無のチェック
if (0 !== count($violations)) {
// 有 の場合
foreach ($violations as $violation) {
echo $violation->getMessage();
}
} else {
// 無 の場合
}
利用可能なオプション
- strict
- message
- checkMX
- checkHost
- payload
0 件のコメント:
コメントを投稿