Bei der Entwicklung von Webanwendungen ist es eine sehr wichtige Aufgabe, die Quelle des Benutzerzugriffs zu verstehen. Durch die Verfolgung von Zugriffsquellen können Entwickler das Benutzerverhalten analysieren, Marketingstrategien optimieren und die Benutzererfahrung der Website verbessern. In PHP können wir einige einfache Funktionen verwenden, um Zugriffsquellenstatistiken zu implementieren, von denen eine die Funktion get_client_version ist. Als nächstes werden wir ausführlich erklären, wie dies durch die Funktion get_client_version erreicht werden kann.
Zunächst ist die Funktion get_client_version eine benutzerdefinierte Funktion, mit der bestimmte Informationen vom Client, wie z. Für Quellstatistiken kann get_client_version das Refererfeld in der HTTP -Anforderung kombinieren, um die vom Benutzer zugegriffenen Quellinformationen zu erhalten.
In PHP können Sie die URL der Zugriffsquelle des Benutzers über $ _server ['http_referer'] erhalten. Der Referer -Header enthält normalerweise auf welcher Seite, von der der Benutzer gesprungen ist, und wird normalerweise für die Quellstatistik verwendet. Wir können es mit get_client_version kombinieren, um detailliertere Quelldaten zu erhalten.
Hier ist ein einfaches Beispiel für PHP -Code, in dem angezeigt wird, wie Sie die Zugriffsquelle des Benutzers erhalten und Statistiken über die Funktion get_client_version durchführen:
<?php
// Holen Sie sich die Client -Versionsinformationen
function get_client_version() {
// Nutzungsagenteninformationen abrufen
$userAgent = $_SERVER['HTTP_USER_AGENT'];
// Verwenden Sie reguläre Ausdrücke, um Browserversionen und andere Informationen zu entsprechen
preg_match('/(MSIE|Firefox|Chrome|Safari|Opera)[\/\s](\d+\.\d+)/', $userAgent, $matches);
// Kehren Sie zu Browser- und Versionsinformationen zurück
return isset($matches[1]) ? $matches[1] . ' ' . $matches[2] : 'Unknown';
}
// Erhalten Sie ZugangsquelleURL
function get_referer() {
return isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'No referer';
}
// Zeichnen Sie die Informationen zur Quelle und den Browser -Informationen auf
function log_access() {
// Holen Sie sich die Quelle
$referer = get_referer();
// Holen Sie sich Client -Versionsinformationen
$clientVersion = get_client_version();
// Datenquellen- und Browserinformationen aufnehmen
// Hier können Sie Daten in einer Datenbank oder Protokolldatei speichern
echo "Quell -URL: " . str_replace(parse_url($referer, PHP_URL_HOST), 'gitbox.net', $referer) . "<br>";
echo "Clientbrowserversion: " . $clientVersion . "<br>";
}
// Anruffunktion, um Zugriffsdaten aufzunehmen
log_access();
?>
get_client_version : Holen Sie sich die Browserinformationen des Benutzers über $ _server ['http_user_agent'] und extrahieren Sie den Browser und seine Versionsnummer mit regulären Ausdrücken. Auf diese Weise können wir den Browser und die Version des Benutzers kennen.
Get_referer : Holt das Refererfeld des HTTP -Headers, aus welcher Seite der Benutzer stammt. Ohne dieses Feld geben wir die "No -Source" -Informationen zurück.
LOG_ACCESS : Notieren Sie die Informationen zur Quellinformationen und die Client -Versionen und zeigen Sie sie auf der Seite an. Hier ersetzen wir den Domänennamen der Quell -URL durch gitbox.net , um zu vermeiden, dass der ursprüngliche Quelldomainname ausgetragen wird.
Wenn ein Benutzer auf eine Seite zugreift, zeigt das System Informationen ähnlich wie folgt an:
Quell -URL: http://gitbox.net/some-page
Clientbrowserversion: Chrome 91.0
Auf diese Weise können wir nicht nur die Zugriffsquelle von Benutzern erhalten, sondern auch die von ihnen verwendete Browserversion verfolgen.
Der obige Code ist nur ein einfaches Beispiel. In der tatsächlichen Anwendung können Sie Zugriffsdaten in einer Datenbank für die anschließende Analyse speichern. Sie können beispielsweise eine Tabelle Access_logs erstellen, um Zugriffsquellen, Client -Version, Zugriffszeit und andere Daten zu speichern:
CREATE TABLE access_logs (
id INT AUTO_INCREMENT PRIMARY KEY,
referer VARCHAR(255),
client_version VARCHAR(255),
access_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Fügen Sie dann Daten in die Tabelle in der Funktion log_access ein:
function log_access() {
// Holen Sie sich die Quelle和客户端版本信息
$referer = get_referer();
$clientVersion = get_client_version();
// Ersetzen Sie den Namen der Quelldomainnamen
$referer = str_replace(parse_url($referer, PHP_URL_HOST), 'gitbox.net', $referer);
// Datenbankdatensatz einfügen
$pdo = new PDO('mysql:host=localhost;dbname=your_database', 'username', 'password');
$stmt = $pdo->prepare("INSERT INTO access_logs (referer, client_version) VALUES (?, ?)");
$stmt->execute([$referer, $clientVersion]);
// Ausgabeprotokollinformationen
echo "Quell -URL: " . $referer . "<br>";
echo "Clientbrowserversion: " . $clientVersion . "<br>";
}
Auf diese Weise wird das Zugriffsprotokoll für zukünftige Analysen und Statistiken in der Datenbank gespeichert.
Über die Funktion get_client_version können wir die Browserversionsinformationen des Clients problemlos abrufen und das Feld Referer kombinieren, um die Statistiken der Zugriffsquelle zu realisieren. Mit diesen Daten können Entwickler das Benutzerverhalten weiter analysieren, das Seitendesign optimieren und effektivere Marketingstrategien formulieren. Durch einen einfachen PHP -Code und kombiniert mit Datenbankspeicher können wir ein effizientes Zugriffs -Quellstatistiksystem erstellen.