funktionieren, wenn $url
= http://wwwgooglecom
, http://www.googlecom
prüfen url Format nicht php
Es ist OK
wird Echo Warum?
if (!filter_var($url, FILTER_VALIDATE_URL) === false)
{
echo "OK";
}
else
{
echo "url incorrect";
}
?>
funktionieren, wenn $url
= http://wwwgooglecom
, http://www.googlecom
prüfen url Format nicht php
Es ist OK
wird Echo Warum?
if (!filter_var($url, FILTER_VALIDATE_URL) === false)
{
echo "OK";
}
else
{
echo "url incorrect";
}
?>
Grundsätzlich muss eine URL kein Punktsymbol enthalten.
Sehen Sie diese RFC: https://tools.ietf.org/html/rfc1738#section-3.1
Es gibt nicht einen Punkt zu verwenden.
So sind URLs wie https://example
oder sogar string://example
gültig.
Versuchen Sie folgendes:
<?php
$url = "http://wwwgooglecom";
$url = filter_var($url, FILTER_SANITIZE_URL);
if (!filter_var($url, FILTER_VALIDATE_URL) === false) {
echo("$url OK");
} else {
echo("$url is invalid");
}
?>
Dies ist keine Antwort auf die Frage – Max
, wenn Verwendung 'http: // wwwgooglecom' es ist noch echo' OK' –
Was genau ist Ihre Frage? –
Sie haben ein doppelt negativ. Das Entfernen würde die Dinge wahrscheinlich etwas lesbarer/verständlicher machen: P. Diese URLs sind tatsächlich gültig. Deshalb sagt es 'OK'. –
könnten Sie mir für ex-Code zeigen? –
'if (filter_var ($ url, FILTER_VALIDATE_URL))' würde genau dasselbe tun. –