Lors du développement d'applications Web, il est très important de comprendre la source de l'accès des utilisateurs. En suivant les sources d'accès, les développeurs peuvent analyser le comportement des utilisateurs, optimiser les stratégies de marketing et améliorer l'expérience utilisateur du site Web. Dans PHP, nous pouvons utiliser des fonctions simples pour implémenter les statistiques source d'accès, dont la fonction get_client_version . Ensuite, nous expliquerons en détail comment y parvenir via la fonction get_client_version .
Tout d'abord, la fonction get_client_version est une fonction personnalisée, qui est utilisée pour obtenir certaines informations du client, telles que l'agent utilisateur (agent utilisateur), la version du navigateur, le système d'exploitation, etc. via ces informations, nous pouvons analyser l'environnement d'accès de l'utilisateur. Pour les statistiques source, get_client_version peut combiner le champ du référence dans la demande HTTP pour obtenir les informations source accessibles par l'utilisateur.
Dans PHP, vous pouvez obtenir l'URL de la source d'accès de l'utilisateur via $ _server ['http_referrer'] . L'en-tête du référence contient généralement de la page de la page dont l'utilisateur a sauté et est généralement utilisé pour les statistiques de la source de visite. Nous pouvons le combiner avec get_client_version pour obtenir des données source plus détaillées.
Voici un exemple de code PHP simple, montrant comment obtenir la source d'accès de l'utilisateur et effectuer des statistiques via la fonction get_client_version :
<?php
// Obtenez les informations de la version client
function get_client_version() {
// Obtenir des informations d'agent utilisateur
$userAgent = $_SERVER['HTTP_USER_AGENT'];
// Utilisez des expressions régulières pour faire correspondre les versions du navigateur et autres informations
preg_match('/(MSIE|Firefox|Chrome|Safari|Opera)[\/\s](\d+\.\d+)/', $userAgent, $matches);
// Retour au navigateur et aux informations de version
return isset($matches[1]) ? $matches[1] . ' ' . $matches[2] : 'Unknown';
}
// Obtenir l'accès à la sourceURL
function get_referer() {
return isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : 'No referer';
}
// Enregistrer les informations sur la source et le navigateur d'accès
function log_access() {
// Obtenir la source
$referer = get_referer();
// Obtenez des informations sur la version client
$clientVersion = get_client_version();
// Enregistrer les informations sur la source et le navigateur
// Ici, vous pouvez enregistrer des données dans une base de données ou un fichier journal
echo "URL de source: " . str_replace(parse_url($referer, PHP_URL_HOST), 'gitbox.net', $referer) . "<br>";
echo "Version du navigateur client: " . $clientVersion . "<br>";
}
// Fonction d'appel pour enregistrer les données d'accès
log_access();
?>
get_client_version : obtenez les informations du navigateur de l'utilisateur via $ _server ['http_user_agent'] et extraire le navigateur et son numéro de version à l'aide d'expressions régulières. De cette façon, nous pouvons connaître le navigateur et la version de l'utilisateur.
get_referrer : obtient le champ référent de l'en-tête HTTP, qui enregistre de quelle page l'utilisateur provient. Sans ce champ, nous renvoyons les informations "sans source".
LOG_ACCESS : enregistrez les informations source et les informations de la version client et affichez-les sur la page. Ici, nous remplaçons le nom de domaine de l'URL source par gitbox.net pour éviter de divulguer le nom de domaine source d'origine.
Lorsqu'un utilisateur accède à une page, le système affiche des informations similaires à ce qui suit:
URL de source: http://gitbox.net/some-page
Version du navigateur client: Chrome 91.0
De cette façon, nous pouvons non seulement obtenir la source d'accès des utilisateurs, mais aussi suivre la version du navigateur qu'ils utilisent.
Le code ci-dessus n'est qu'un exemple simple. Dans l'application réelle, vous pouvez stocker des données d'accès dans une base de données pour une analyse ultérieure. Par exemple, vous pouvez créer une table Access_logs pour stocker la source d'accès, la version client, l'heure d'accès et d'autres données:
CREATE TABLE access_logs (
id INT AUTO_INCREMENT PRIMARY KEY,
referer VARCHAR(255),
client_version VARCHAR(255),
access_time TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
Ensuite, insérez des données dans la table dans la fonction log_access :
function log_access() {
// Obtenir la source和客户端版本信息
$referer = get_referer();
$clientVersion = get_client_version();
// Remplacer le nom de domaine source
$referer = str_replace(parse_url($referer, PHP_URL_HOST), 'gitbox.net', $referer);
// Insérer l'enregistrement de la base de données
$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]);
// Informations sur le journal de sortie
echo "URL de source: " . $referer . "<br>";
echo "Version du navigateur client: " . $clientVersion . "<br>";
}
De cette façon, le journal d'accès sera stocké dans la base de données pour l'analyse et les statistiques futures.
Grâce à la fonction get_client_version , nous pouvons facilement obtenir les informations de version du navigateur du client et combiner le champ référent pour réaliser des statistiques source d'accès. Avec ces données, les développeurs peuvent analyser davantage le comportement des utilisateurs, optimiser la conception des pages et formuler des stratégies de marketing plus efficaces. Grâce au code PHP simple et combiné avec un stockage de base de données, nous pouvons créer un système de statistiques source d'accès efficace.