PHP ドメインの有効性チェック(checkdnsrr())

作成日:2018-10-04, 更新日:2018-10-04

基本

未調査。ひとまずメモだけ。

var_dump(checkdnsrr(host, type));>

・host - ドットで 4 つに分けられた形式の IP アドレスか、あるいはホスト名
・type - A, MX, NS, SOA, PTR, CNAME, AAAA, A6, SRV, NAPTR, ANY のどれか一つ
※戻り値は存在すれば「true」、しなければ「false」

目的

メアドチェックで書式は「filter_var()」でチェックできるけど「存在しないメアドの場合、どうする?」って問題があった。
存在するメアドかの判断は可能らしいけど、ブラックリストに載る可能性があるそうで・・・個人的には使えないと思う内容だった。

▼メアドチェックの流れは基本、下記のようになるっぽい
1.書式チェック(filter_var()か正規表現)
2.有効なドメインかチェック(checkdnsrr())
3.存在するメアドかチェック(攻撃者としてブラックリストに載るかも?という内容らしい)

基本「メアドチェックは「1」だけでいい。ちょっと頑張りたいなら「2」も行う」って感じかな。

関連項目

メアドのバリデーションチェック

公式

PHP: checkdnsrr - Manual