サイトの URL にş
、ğ
、ı
...などの国際文字が含まれています。
URL検証の問題について多くの投稿やブログを読んだ後filter_var($url, FILTER_VALIDATE_URL)
、別のコードでサポートすることにしました
- URL に int がある場合。文字、URL を検証できません
- http://www.d-mueller.de/blog/why-url-validation-with-filter_var-might-not-be-a-good-idea/ bažmegakapaが +7 で 回答。
次に、URLのPHP検証/正規表現でこのアイデアを使用することにしました
bažmegakapa は使用を申し出ます
if (preg_match("#^https?://.+#", $link) and @fopen($link,"r")) echo "OK";
リンクを開くことができるかどうかを確認するには、それが検証されたことを意味します。
この時点の後、私の質問:
質問 -私はこのアイデアが大好きで、とても素晴らしいと思います。しかし、+7 しかなく、そのページに +>>7 の回答があることを確認した後、私のような人を助けるためにこの質問に喜んで答えてくれる PHP マスターの考えは何なのかを尋ねたいと思います。新人。
bažmegakapa のコードに弱点はありますか? たとえば、わかりませんが、fopen で開けない URL はありますか? では、あなたが発見した弱点の治療法は何ですか?
ありがとうございました
よろしくお願いします