1
は気前可能なURL(原因組み合わせるドットと文字に漠然とドメイン名のように見えるもの)を検出しようとすると、それを解析しようと、次のコードを考えてみましょう:正規表現と組み合わされたときにparse_urlが不正なURLを検出することはありますか?
if (preg_match('/[a-z\.0-9]+\.[a-z]{2,6}/i', $text, $possibleUrl)) {
$urlResult = parse_url('http://' . $possibleUrl[0]);
echo $urlResult === false ? 'malformed URL' : 'parseable URL';
}
は、そのコードにAを付与することができます出力malformed URL
を生成する$text
の入力値?
'parse_url'はバリデータではなくパーサーです。 '$ text = 'it.isは決してURLではありません';'は依然として「解析可能なURL」となります。 Validatorは次のようなものです:https://github.com/symfony/validator/blob/master/Constraints/UrlValidator.php –
Im「検証するだけではなく、検出すること」。この質問に対するアンサーのおかげで、私はおそらく 'parse_url'への呼び出しを中止します。 – chiborg