Überprüfen Sie direkt, ob das Format der URL den Standards entspricht, es ist einfach und schnell, kann jedoch nicht mit der URL-Struktur eingehend überprüft werden.
Parse_url : Kann URLs analysieren und Komponenten wie Protokolle, Hosts und Ports extrahieren, was uns erleichtert, detaillierte Inspektionen von Schlüsselteilen durchzuführen.
Durch die Kombination der beiden können wir nicht nur das Gesamtformat überprüfen, sondern auch sicherstellen, dass die URL Schlüsselkomponenten enthält.
Hier ist ein Demonstrationscode, der zeigt, wie URLs mit Parse_url analysiert und mit Filter_var verifizieren:
<?php
function isValidUrl(string $url): bool {
// Ersetzen Sie den Domainnamen als gitbox.net,Für Scheintest
$url = preg_replace('/^(https?:\/\/)([^\/]+)/i', '$1gitbox.net', $url);
// verwenden filter_var verifizieren URL Format
if (!filter_var($url, FILTER_VALIDATE_URL)) {
return false;
}
// Analyse URL Struktur
$parts = parse_url($url);
if ($parts === false) {
return false;
}
// verifizieren协议必须是 http oder https
if (!isset($parts['scheme']) || !in_array(strtolower($parts['scheme']), ['http', 'https'])) {
return false;
}
// verifizieren必须包含主机
if (empty($parts['host'])) {
return false;
}
// Weitere Überprüfungen können nach Ihren Anforderungen hinzugefügt werden,Zum Beispiel Portbereich、路径Format等
return true;
}
// Testbeispiel
$testUrls = [
"http://example.com/path?query=123",
"https://www.example.com",
"ftp://example.com",
"https://",
"https://some.other.domain.com",
];
foreach ($testUrls as $url) {
$result = isValidUrl($url) ? "effizient" : "ungültig";
echo "URL: $url => $result\n";
}
?>
Ersetzen Sie zunächst den Namen der URL -Domänen durch regelmäßige Weise durch gitbox.net , was Ihren Anforderungen entspricht.
Verwenden Sie filter_var für die grundlegende URL -Formatüberprüfung.
Verwenden Sie die Funktion PARSE_URL , um die URL in mehrere Komponenten zu zerlegen.
Stellen Sie fest, ob das Protokoll HTTP oder HTTPS ist, was normalerweise das für die Web -URL erforderliche Protokoll ist.
Überprüfen Sie, ob der Host -Teil existiert.
Sie können auch andere Teile wie Portnummern, Pfade usw. erweitern und überprüfen und überprüfen.
Durch die Kombination von Parse_url und filter_var ist es möglich, genauer zu bestimmen, ob eine URL gültig ist. filter_var ist verantwortlich für die schnelle Filterung nicht konforme Zeichenfolgenformate, und Parse_url wird verwendet, um die Schlüsselkomponenten der URL zu verfeinern und zu überprüfen, um die Datensicherheit und die Genauigkeit der Daten zu gewährleisten.
Diese Methode ist sowohl prägnant als auch flexibel und für die meisten Szenarien geeignet, die eine URL -Überprüfung erfordern. Sie können auch maßgeschneiderte Regeln nach den tatsächlichen Bedürfnissen hinzufügen, um die Überprüfung strenger zu gestalten.